Gartner公布Q3全球服务器报告:出货量318.3万台
主要受到互联网公司采购,机架式服务器的增长则源于传统企业用户采购。...阅读全文
主要受到互联网公司采购,机架式服务器的增长则源于传统企业用户采购。...阅读全文
网口、蓝牙5.0、双MicroHDMI接口、耳机孔等。 树莓派基金会创始人兼CEO Eben Upton将此次降价归功于RAM成本降低,他指出,树莓派4B和8年前树莓派一代发售时价格一致,实际上考虑这些年的通货膨胀,起初就等于优惠了5美元。...阅读全文
是一家商业公司,它提供基于 Debian GNU/Linux 的专用产品,尤其是 Proxmox Virtual Environment 和 Proxmox Mail Gateway。Proxmox Virtual Environment 是一份开源的虚拟平台,可运行虚拟应用软件及虚拟机。Proxmox Mail Gateway 则是一份具有反垃圾邮件和反病毒特性的邮件网关。这些产品以免费下载形式提供,并带有付费支持及订购选项。 新闻来自:Linux伊甸园...阅读全文
、dynamic_cast、try/ catch、虚拟constexpr 向量和字符串计时:日历、时区支持std::formatstd::spanstd::jthread 预计这些新特性将会对开发者及 C++ 生态产生不小影响,特别是像协程这种巨大的变化。 同时,在此次会议期间,委员会还通过了 C++ 23 计划,其中包括优先考虑模块化标准库、对协程、执行程序和网络的库支持。...阅读全文
Alpine Linux 3.6.1 已发布。Alpine Linux 是由社区开发的操作系统,它面向 x86 路由器、防火墙、虚拟专用网、IP 电话盒及服务器而设计。它在设计时就贯彻了安全的理念,包含了一些主动安全特性如 PaX 和 SSP ,它们能防止软件中的漏洞被敌手加以利用。该系统采用的 C 语言库是 musl ,基础工具则都在 BusyBox 中。它们在嵌入式系统中很常见,它们比 GNU/Linux 系统中的工具要小。 此次更新进行了大量 Bug 修复,相关内容: Bug #6668: Can’t boot on Raspberry Pi 2 Bug #7047: v4l2-ctl segfaults when setting control values Bug #7093...阅读全文
硬件黑客 NODE 开发了一款运行在树莓派零(Raspberry Pi Zero)上的模块化手持式 Linux PC,名为 "Zero Terminal 3"。其配有 WaveShare 5.5 英寸全高清触控 AMOLED 显示屏、全尺寸 USB 2.0 接口、micro SD 插座和 1200 mAh 的内置锂电池。 同时,Zero Terminal 3 还支持附加组件,包括键盘、游戏控制器、无线电收发器、网络接口、太阳能电池板或电视调谐器等。事实上,这并不是 NODE 开发的第一款手持计算机,不过与旧版本相比,Zero Terminal 3 拥有更大的显示屏和更多的功能。 Zero Terminal 3 Linux PC 的规格具体如下: USB 2.0 A 型端口微型 USB 端口...阅读全文
提供关注点分离,并专注于特定功能,以减少意大利面条的依赖性和不可测的组件 对于Sidecar容器一般来说主要体现在以下4种角色: 代理。例如现在Istio中的Envoy。 通过这种Sidercar 模式,代理可以拦截进出主容器的流量从而Istio可以提取有关流量行为的大量信号作为属性。 Istio可以使用这些属性来执行策略决策,并将其发送到监视系统以提供有关整个网格行为的信息。 Sidecar代理模型还允许您将Istio功能添加到现有部署中,而无需重新构造或重写代码。 适配器。适配器容器对输出进行标准化。考虑监视N个不同应用程序的任务。可以使用不同的导出监视数据的方式来构建每个应用程序。 (例如JMX,StatsD,特定于应用程序的统计信息),但每个监控系统都希望其收集的监控数据具有一致且统...阅读全文
,并且 toHexString()操作也进行了优化。重新使用 async-profiler 查看一下最新的火焰图信息。 之前的 toHexString() 耗时已经几乎看不到了,但是感觉日志append 的操作横轴还是略长,于是将日志输出关闭来看看极限处理速度。 将日志级别调整为 warn,并启动程序,观测到处理速度已经能够达到 18万/s了,这相当于 toHexString()优化前的快3倍了。 此时决定再将日志append 模式改为异步模式,然后启动程序,观察,处理速率也能够达到 18万/s。 十、参考链接 火焰图的介绍论文 火焰图官方主页 火焰图生成工具 https://www.ruanyifeng.com/blog/2017/09/flame-graph.html https...阅读全文
数据库。 6. 拥有复杂的数据(视频、图像、文件)——选择 Blob/对象存储。 7. 复杂的计算——使用消息队列和缓存。 8. 海量数据搜索——考虑搜索索引、尝试搜索引擎。 9. 扩展 SQL 数据库 — 实施数据库分片。 10. 高可用性、性能和吞吐量 — 使用负载均衡器。 11. 全球数据交付——考虑使用 CDN。 12. 图形数据(具有节点、边和关系的数据)——利用图形数据库。 13. 扩展各种组件——实现水平扩展。 14. 高性能数据库查询——使用数据库索引。 15. 批量作业处理——考虑批处理和消息队列。 16. 服务器负载管理和防止 DOS 攻击 - 使用速率限制器。 17. 微服务架构——使用 API 网...阅读全文
time desc limit 17.总结本文整理了业务中使用influxdb遇到的问题,并提出了一些优化方案。目前来看,influxdb对于笔者仍然是一个黑盒程序,更细致的内容就需要从源码追寻。当前采用了如下方式进行优化(由于需要对配置参数,策略各方面权衡,这是一个持续的过程):(1) retention policy#将保留策略修改为:3天一周期;1天一分片 alter retention policy rp_iot_cloud on iot_cloud duration 3d REPLICATION 1 SHARD DURATION 1d default(2) 配置文件#influxdb配置文件,主要参数如下: [data] #wal日志落盘周期,官方建议0-100ms #尝试了100ms...阅读全文
path:"中输入目标分支的远程地址,例如http://localhost/branches/develop/。Step 3:单击“OK”按钮,等待操作完成即可。四、SVN切换分支常见问题处理在使用SVN进行分支切换的过程中,可能会遇到一些常见的问题。为了方便大家解决这些问题,下面列举了一些经常遇到的问题及其解决方法:1. SVN switch的URL地址错误在使用SVN switch命令进行分支切换时,如果URL地址有误,可能会导致切换分支失败。此时,可以按照以下步骤进行处理:Step 1:检查URL是否正确;Step 2:确认URL地址是否可以访问。2. 更新操作失败在进行分支切换的过程中,可能会遇到更新操作失败的问题。这时,我们可以使用以下方法来解决这个问题:Step 1:检查网络连接是否正...阅读全文
需要到网页版OCBC 申请开通,App 没入口账户用途最方便的用途应该是开通长桥证券之类的,用来炒美股。刚好最近长桥证券有一个活动,开户入金3000新币,港美股永久免佣+72新币股票现金卡+5US期权券。72新币大约385人民币。...阅读全文
在这个互联网时代,游戏、电影、照片等数据越来越大,硬盘容量将会面临着前所未有的挑战。虽然传统的机械硬盘可以解决容量问题,但是速度太慢,体验糟糕,并不是最优的个人存储解决方案。我们渴求大容量的SSD,不过超过TB大容量SSD动不动就几千元的售价,对于支付能力有限用户实际上没有意义。SSD的成本主要来源于闪存,在TLC闪存能够实现TB容量可惜价格未能降下来。只有不断开发新类型的闪存,解决容量与价格的矛盾,才能让SSD真正在大数据时代发挥应有作用。 这时,QLC 闪存就应运而生, 目前,东芝和西数先后宣布成功开发基于四比特单元3D NAND闪存芯片,即QLC闪存,这也意味着QLC SSD将要来临。那么,它与TLC闪存又有什么区别,能否取代TLC成为SSD主流闪存之选? 先来了解一下什么是TLC...阅读全文
有更好的吞吐量,内置的分区,冗余及容错性,这让Kafka成为了一个很好的大规模消息处理应用的解决方案。消息系统 一般吞吐量相对较低,但是需要更小的端到端延时,并尝尝依赖于Kafka提供的强大的持久性保障。在这个领域,Kafka足以媲美传统消息系统,如ActiveMR或RabbitMQ 站点的用户活动追踪: 为了更好地理解用户行为,改善用户体验,将用户查看了哪个页面、点击了哪些内容等信息发送到每个数据中心的Kafka集群上,并通过Hadoop进行分析、生成日常报告。 流处理:保存收集流数据,以提供之后对接的Storm或其他流式计算框架进行处理。很多用户会将那些从原始topic来的数据进行 阶段性处理,汇总,扩充或者以其他的方式转换到新的topic下再继续后面的处理。例如一个文章推荐的处理流程...阅读全文
昨天,Apache Kafka 3.0 版本正式发布,这是一个涉及多方面的大版本。在这个版本中,Apache Kafka 3.0 引入了各种新功能、突破性的 API 更改以及对 KRaft 的改进:Apache Kafka 的内置共识机制将取代 Apache ZooKeeper™。虽然 KRaft 尚未被推荐用于生产(已知差距列表),但我们对 KRaft 元数据和 API 进行了许多改进。Exactly-once 和分区重新分配支持值得强调,我们鼓励开发者查看 KRaft 的新功能并在开发环境中试用它。并且,从 Apache Kafka 3.0 开始,生产者默认启用最强的交付保证 ( acks=all, enable.idempotence=true),这意味着用户现在默认获得排序和持久性...阅读全文
谷歌开始在其Chrome浏览器中实现对HTTP/3的支持,该公司在一篇博客中宣布。此次更新将带来一些额外的性能改进,主要得益于实现了QUIC作为传输协议。互联网工程任务组(或IETF)早在2015年就推出了HTTP/2,它带来的一大改进就是支持复用。 但是,它采用了TCP作为传输协议,以及TCP中的丢失恢复机制,所以丢失的数据包仍然会造成所有活动事务的延迟。通过采用QUIC,HTTP/3可以进一步改善传输过程,因为丢失的数据包只会影响到直接受其影响的事务。 谷歌是QUIC的最初开发者,但该协议在IETF手中已经有一段时间了,现在IETF版本的QUIC与谷歌内部的QUIC有很大不同。到目前为止,谷歌只支持自己的QUIC实现,而IETF则还在研究其版本,但现在这种情况正在改变。谷歌表示...阅读全文
活。 gRPC的性能对于设置管道来处理仪表板发布的大量增加至关重要。此外,HTTP / 2是下一个标准化的网络协议,可以利用为HTTP / 2开发的工具和技术(如Envoy代理),并为gRPC提供一流的支持。由于多路复用流支持,gRPC支持双向通信,不限于简单的请求/响应呼叫。 什么是Protobufs(协议缓冲区)? Protocol Buffers或protobufs是定义和序列化结构化数据为高效的二进制格式的一种方式,也是由Google开发的。二者的有效结合,也是我们选择gRPC的主要原因之一。 以前有许多与想修复的版本相关的问题。微服务意味着必须不断更新,需要适应并保持向前和向后兼容的接口,protobufs对此非常有用。由于是二进制格式,所以它们也是通过wire快速发送的小型有效载...阅读全文
个。 镜像的层就像 Git 的提交(commit)一样。Docker 的层用于保存镜像的上一版本和当前版本之间的差异。就像 Git 的提交一样,如果你与其他存储库或镜像共享它们,就会很方便。 实际上,当你向注册表请求镜像时,只是下载你尚未拥有的层。这是一种非常高效地共享镜像的方式。但额外的层并不是没有代价的。层仍然会占用空间,你拥有的层越多,最终的镜像就越大。Git 存储库在这方面也是类似的,存储库的大小随着层数的增加而增加,因为 Git 必须保存提交之间的所有变更。 过去,将多个 RUN 语句组合在一行命令中或许是一种很好的做法,就像上面的第一个例子那样,但在现在看来,这样做并不妥。 1. 通过 Docker 多阶段构建将多个层压缩为一个 当 Git 存储库变大时,你可以选择将历史提交记录...阅读全文
的9.2%的被动股份。这一披露促使这家社交媒体巨头的首席执行官帕拉格-阿格拉瓦(Parag Agrawal)向马斯克提供了一个Twitter董事会席位。然而,马斯克拒绝成为Twitter董事会的一员,因为该提议有一个条件,即阻止特斯拉CEO将其在Twitter的股份增加到15%以上,可以预见的是,这引起了人们的猜测,即马斯克正在对整个公司发起恶意收购。 就在这些戏剧性事件发生几天后,马斯克正式公布了他以每股54.2美元的价格将Twitter私有化的提议,相当于超过430亿美元的价格。马斯克还写了一封致Twitter董事会的公开信,指出。 "我投资Twitter是因为我相信它有可能成为全球自由言论的平台,我相信言论自由是一个正常的民主社会所必需的。然而,自从投资以来,我现在意识到...阅读全文
态。这时,虽然 Java 能够对外提供服务,但服务质量较差,如果该阶段的用户并发较高,那么就会造成服务质量降级乃至服务崩溃。 为了优化这一过程,通常的工业实践会在 Java 启动后引入 " 预热 "(warmup) 步骤,通过人为导入数据来让应用提前加热。在预热完成之前,用户请求通过网络控制不让它发送到 Java 进程,在预热完成之后才打开流量限制让 Java 真正提供服务。这个做法可以部分缓解上述问题,但是该方案在很多场景下会有一些局限性,在很多情况下,获取一份高质量的预热数据是很困难的。而预热数据的正确性直接影响预热效果,与实际情况相符的数据可以提高编译质量,如果不一致,有时反而会造成反面效果,比如一种常见的情况是预热时漏掉重要方法调用。更糟糕的情况是由于和实际情况不一致,导致 JVM...阅读全文
回来。这样我可以其它电脑上安装,或者将修正的包文件发给我的朋友。我要怎么做呢? 在网络上搜索问题的答案,我发现一个名叫ailoo.net的小型博客,它给出类似这样解释: mkdir -p extract/DEBIAN dpkg-deb -x package.deb extract/ dpkg-deb -e package.deb extract/DEBIAN [...do something, e.g. edit the control file...] mkdir build dpkg-deb -b extract/ build/ 这五条命令将奇迹般地完成工作。让我为你解释一下: 第一条命令创建了一个名为“extract”文件夹和一个名为“DEBIAN”的子文件夹; 第二条命令会从你的...阅读全文
今天Go 团队很高兴地宣布Go 1.8发布了。现已提供下载。整个标准库有了显著的性能提升和变化。该版本主要的更新内容如下: Go 1.7中为64位x86引入的编译器后端现在用于所有体系结构,这些体系结构将会有显著的性能改进。例如,我们的基准程序所需的CPU时间在32位ARM系统上减少了20-30%。在此版本中,64位x86系统还有一些性能改进,编译器和链接器更快了,编译时间应该比Go 1.7提高约15%。但是在这一领域还有很长的路要走:我们希望在未来版本中实现更快的编译速度。 垃圾收集暂停时间明显更短,通常在100微秒以下,有时候甚至低至10微秒。 HTTP服务器添加对 HTTP/2 Push的支持,允许服务器抢先发送响应到客户端。这对于通过消除往返行程来最小化网络延迟非常有用。HTTP服...阅读全文
全球的内存市场主要被三星、SK Hynix和美光三家公司垄断,他们三家加起来的份额高达95%,中国要想在内存市场突破封锁并不容易,尽管有紫光、长鑫、兆易创新等公司投身存储芯片市场,但在现有的DDR内存技术上,中国公司技术、产能还差得远呢。 此外,内存也不止传统的DDR技术,还有很多新兴领域正在发展,比如PCM相变存储,相比传统内存它的优势很多,比如速度快了1000倍,耐用性也是传统内存的1000倍,江苏淮安市时代芯存公司投资130亿元建设了国内最大的相变存储基地,上周已经开始正式运营,预计年产值45亿元。 来自中国江苏网的消息称,淮安市集成电路产业现场推进暨江苏时代芯存半导体有限公司相变存储器工厂竣工运营启动仪式在淮安高新技术产业开发区顺利举行,此举标志着130亿元投资的相变存储项目开始进...阅读全文
sql查询出来的结果 {component="node",device=":/var/lib/docker/nfs",fstype="nfs",hostname="xxx",instance="xxx",instance_ip="xxx",job="job:monitor",mountpoint="/var/lib/docker/volumes/volume-nfs/_data",node_type="controller",system="QHC-CORE"} 9.978290691634598 确实有点差异,同事说df计算的使用率更严谨,但具体怎么算的也不清楚,同时看到df -h的结果size并不等于used+avail之和,于是就在网上查询相关的文章,看到了这篇文章谁吃了你的硬盘空间?(1...阅读全文
Proxmox VE 6.2 现已发布,该版本基于新发布的 Debian 10.4,同时引入了 Linux 5.4 LTS 内核、QEMU 5.0、LXC 4.0 和其他更新的软件组件,包括 OpenZFS 0.8.3。Proxmox VE(Proxmox Virtual Environment)是一个非常棒的集成 OPENVZ 支持 KVM 应用的环境。 Proxmox VE 6.2 的一些亮点内容如下 基于 Web 的管理界面的高级选项: 除了已经存在的基于 HTTP 的验证模式之外,Proxmox VE 还通过基于 DNS 的质询机制为 Let’s Encrypt TLS 证书实现了域的内置验证。完全支持多达八个 corosync 网络链接。使用的链接越多,集群可用性就越高。在存储内...阅读全文
问的代码中,所以无法被黑客远程利用。但这并不意味着它的破坏力不强。Nichols 警告说黑客可以利用这些漏洞发起任何现有的网络威胁,甚至于会让事情变得更加糟糕。可以想象在你的系统中有不信任的用户以 root 权限访问,这是多么的可怕。在详细介绍这三个漏洞的博文中,Nichols 解释了受影响的系统类型:为了让这些漏洞暴露在用户区,scsi_transport_iscsi 内核模块必须被加载。当执行创建 NETLINK_ISCSI 套接字的调用时,这个模块会被自动加载。此外,至少有一个 iSCSI 传输必须在 iSCSI 子系统中注册。在某些配置中,当无权限的用户创建 NETLINK_RDMA 套接字时,ib_iser 传输模块将被自动加载。正如 SC Media 所解释的那样,这些漏洞已经在...阅读全文
: 网络插件还没有完全启动...阅读全文
案有如下优势: 可以优化数据模型,让数据更容易被消费。大多数数据模型避免冗余,因为冗余会让写入者一致性地编辑数据变得困难。因为我们的模型不允许编辑数据,所以可以生成重复的信息。这样,消费者那边的逻辑可以比较简单——比如,它们不需要特殊逻辑来找出某个字段的默认值存储在哪里,而只需要依赖扩展后的数据就可以了。和已有配置的集成。这是创建自己的生成pipeline的主要驱动力。在实践中,用户已将Prodspec与大量配置格式和实践集成在一起。“真相来源”可以针对人工或编程编辑进行优化。这很有用,因为我们需要用和配置Google Maps前端完全不同的方式来配置网络交换机。例如,你可能希望同时变更所有前端服务器的二进制版本。使用简单的数据库方案时,这需要编辑每个asset,从而导致潜在的不一致性,特别...阅读全文
"dns_packet_new" 函数中, 它是一个 dns 响应处理程序组件, 它为本地应用程序提供网络名称解析。 根据星期二发布的一个公告, 当系统试图在攻击者控制的 dns 服务上查找主机名时, 经过精心构造的恶意 dns 响应,可以远程崩溃 " systemd-resolved " 程序。 最终, 大量 dns 响应会溢出目标计算机的缓冲区, 从而使攻击者改写其内存,引发远程代码执行。这意味着攻击者可以通过其恶意的 dns 服务,在目标系统或服务器上,远程执行任何恶意软件。 ubuntu 开发者Chris Coulson在开发规范中这样描述, “直到 233版本的 systemd , certain sizes passed to dns_packet_new in systemd-resolved can...阅读全文
性就是序列 ID,它允许基于操作的分片恢复。 以前,如果由于网络问题或节点重启而从集群断开连接的节点,则节点上的每个分区都必须通过将分段文件与主分片进行比较并复制任何不同的分段来重新同步。 这可能是一个漫长而昂贵的过程,甚至使节点的滚动重新启动非常缓慢。 使用序列 ID,每个分片将只能重放该分片中缺少的操作,使恢复过程更加高效。 使用排序索引更快查询 通过索引排序,只要收集到足够的命中,搜索就可以终止。它对通常用作过滤器的低基数字段(例如 age, gender, is_published)进行排序时可以更高效的搜索,因为所有潜在的匹配文档都被分组在一起。 稀疏区域改进 以前,每个列中的每个字段都预留了一个存储空间。如果只有少数文档出现很多字段,则可能会导致磁盘空间的巨大浪费。现在,你付出你...阅读全文
, namespace) / sum(container_spec_memory_limit_bytes{image!=""}) by(pod_name, namespace) * 100 != +inf Pod 文件系统使用量 sum(container_fs_usage_bytes{image!=""}) by(pod_name, namespace) / 1024 / 1024 / 1024 Pod 的网络使用情况 一分钟内发送的字节量: sum(rate(container_network_transmit_bytes_total{image!=""}[1m])) by (pod_name) 一分钟内接受的字节量: sum(rate...阅读全文
Nginx 在 1.13.10 中,新增了对gRPC的原生支持,Nginx 1.14.0 主线版已经发布。本文将介绍,如何配置 Nginx 中的 gRPC 服务。gRPC 服务做为一个 TCP 服务,配置方式与 HTTP/HTPTS 类似。 安装 Nginx Nginx版本要求:1.13.10+。gRPC必须使用 HTTP/2 传输数据,支持明文和TLS加密数据,支持流数据的交互。这是为了充分利用 HTTP/2 连接的多路复用和流式特性。所以在安装部署nginx时需要安装http/2。使用源码安装,编译时需要加入http_ssl和http_v2模块: $ auto/configure --with-http_ssl_module --with-http_v2_module 以明文的方式发布...阅读全文
了这里面的东西,每个程序员都应该可以做到这一点。嗯,但愿吧。 重视语言特性,而不是语言 很多人在乎自己或者别人是否“会”某种语言,对“发明”了某种语言的人倍加崇拜,为各种语言的孰优孰劣争得面红耳赤。这些问题对于我来说都是不存在的。虽然我写文章批评过不少语言的缺陷,在实际工作中我却很少跟人争论这些。如果有其它人在我身边争论,我甚至会戴上耳机,都懒得听他们说什么 为什么呢?我发现归根结底的原因,是因为我重视的是“语言特性”,而不是整个的“语言”。我能用任何语言写出不错的代码,就算再糟糕的语言也差不了多少。 任何一种“语言”,都是各种“语言特性”的组合。打个比方吧,一个程序语言就像一台电脑。它的牌子可能叫“联想”,或者“IBM”,或者“Dell”,或者“苹果”。那么,你可以说苹果一定比 IBM 好...阅读全文
在使用 Docker 时,我们可以使用 docker restart container_id 来非常方便的重启容器,但是在 kubernetes 中并没有重启 pod 的命令。有时 Pod 意外终止时,我们希望重启 pod,来进行排障或者尝试恢复服务。这时我们会发现蛋有点疼,没有一个很直观的方式来重启 pod。 这里我总结了几种重启 Pod 的方式,分两种情况讨论如何重启 K8S 中的 Pod,希望对大家有所帮助。 第一种方式:Deployment方式下重启Pod 大多数生产环境,使用的是 Deployment 方式部署应用。这种场景下,我们可以直接删除对应的 Pod,让k8s去完成 pod 重建,命令: kubectl delete pod {podname} -n...阅读全文
JBoot 是一个基于 JFinal 和 Undertow 开发的微服务框架。提供了 AOP、RPC、分布式缓存、限流、降级、熔断、统一配置中心、Opentracing 数据追踪、metrics 数据监控、分布式 session、代码生成器、shiro 和 jwt 安全控制、swagger api 自动生成等功能。 Jboot v1.7.1 主要更新如下: 新增:redis 添加自定义序列化配置的功能 新增:Jboot.java 添加方法 service(Class clazz, JbootrpcServiceConfig config) 方便获取 rpc service 新增:JbootController 添加 getRawObject() 方便获取 api 传过来的 json 数据...阅读全文
在 Debian 或基于 Debian/Ubuntu 的 Linux 发行版系统中,有多种方法可以将软件包锁定在一个特定的版本。也就是说,可以将某个软件固定维护在指定版本,不让其随系统更新而更新。 为什么要锁定软件包,防止软件包更新呢? 通常是用户对某个软件版本有特定的需求,或更新期间、更新后可能会导致问题,所以需要维持特定的版本不进行升级。在常见的数据类服务中,这样的需求很有代表性,比如缓存Redis、数据队列RabbitMQ等。还有部分服务依赖于系统中特定的软件,比如指定的 Linux 内核版本,这时就需要锁定内核版本防止因内核升级导致服务异常。 我们这里介绍两种方式,防止软件包被更新。需要注意的是,如果软件包被其他软件所依赖,阻止其更新,可能会导致关联问题。建议将尽量少的的软件包锁定...阅读全文
注释,后面的Entity表示该注释的名称。 注释的元素 一个注释可以包含多个可以被赋值的元素。一个元素就像是一个属性或者参数。下面是一个包含一个元素的注释 @Entity(tableName = "vehicles") 元素紧跟在注释之后,并放置在圆括号中,没有元素的注释,不需要圆括号。注释可以包含多个元素,当只包含一个元素时,可以省略元素名,只提供元素值既可,如下: @InsertNew("yes") 注释的位置 你可以将注释放置到类、接口、方法、方法参数、成员变量、局部变量之前。下面是一个将注释放到类之前的例子: @Entity public class Vehicle { } 下面是一个更大的例子,演示了在类、成员变量、方法、参数以及局部变量之前添加注释。仅作演示之用,并没有什么特别的...阅读全文
2022年1月18日,全球企业级开源解决方案领导者SUSE宣布:NeuVector代码库现已在GitHub上向开源社区开放。将之前的专有技术全部开源是对SUSE开源文化的传承,也践行了SUSE向合作伙伴和客户提供开放、互操作性和创新的解决方案的承诺。基于本次发布,NeuVector成为了业界首个端到端的开源容器安全平台,唯一为容器化工作负载提供企业级零信任安全的解决方案。 三个月前,SUSE完成了对NeuVector的收购;此后,SUSE一直在考虑将这一云原生容器安全平台开源所涉及的技术和法律问题。NeuVector是业界领先的安全和合规解决方案,已被全球知名企业广泛采用;其代码库的开源不仅使NeuVector成为开源社区的首选技术,还为受严格监管的客户(包括政企、金融)提供了更可靠...阅读全文
实测有效的一个方案,通过给docker 配置 http_proxy 的方式,配置代理,配置方式如下: 建立空目录: `mkdir /etc/systemd/system/docker.service.d` 创建文件,内容如下:`vi /etc/systemd/system/docker.service.d/http-proxy.conf` ``` Environment="HTTP_PROXY=http://proxy.example.com:80/" Environment="HTTPS_PROXY=http://proxy.example.com:80/" Environment="NO_PROXY=localhost,127.0.0.0/8,docker...阅读全文
开源堡垒机 Jumpserver v1.4.7 已发布 , 修改了配置文件的格式,使用yaml方式配置。本版本主要更新的内容如下: 支持 radius 认证统一生成 coco 的 host key,这样部署多个 coco 也不需要再复制 Host key权限列表增加详细过滤更改配置文件类型为 yml 格式修改心跳方式优化任务执行的日志记录方式修复节点右击测试连接资产为节点下所有资产,而不是直接资产sftp 支持修改 home 目录, 支持不显示隐藏文件修复 luna 隐藏侧边栏的 bugluna 支持直接登录到某个资产 更新说明 Jumpserver 是全球首款完全开源的堡垒机,使用 GNU GPL v2.0 开源协议,是符合 4A 的专业运维审计系统。Jumpserver 使用...阅读全文
每次项目进度都很紧张、项目发版时间总是一延再延、每个版本bug数量堆积成山、测试期间各种bug总是层出不穷、临近上线发现严重bug,如果项目经理总是被这些问题围绕,那么项目总结迫在眉睫。项目经理如何进行项目总结才能让项目顺利进行,让领导一看就喜欢,今天把经验分享给大家,帮助你做好项目总结。总结的思维模式想写好一份项目总结,总结人员必须具备一定的结构化思维,对问题、数据进行结构分析,且能够通过结构化思维表达出来。结构化思维具备以下四个特点。结论:问题比较多的时候,要进行抽象归纳,做到抓大放小,先解决当前最主要的问题。总结的目的✤对项目进行复盘,发现项目中存在的问题,针对问题找到根本原因并提出解决方案;✤提高项目质量,让项目“健康”前行;✤通过数据衡量当前版本的质量,对项目整体情况进行评估...阅读全文
# PostgreSQL 增量同步方案详细设计 ## 一:方案目的 通过PG实例的增量数据同步方案,解决PG在数据迁移中需要进行全量同步,需要长时间停服务的问题. 通过该方案,打通PG和其他数据产品间的数据通道,做到PG和其他数据产品和异构数据库间的实时的同步. ## 二:增量同步方案的技术背景 该方案基于PostgreSQL 9.4版本的逻辑流复制技术. PG9.4 可以做到,利用逻辑流复制,把表的增量数据,以自定义格式的形式组织起来被客户端订阅. 自定义格式的增量数据是逻辑流复制的关键,通过PG内核给出了开放的接口(5个回调函数),可以把增量数据以任意的形式输出. PG的客户端根据需要按照服务端规定的格式解析,就能得到完整的增量数据. ## 三:订阅增量数据的订阅规则 PG增量同步方案...阅读全文
双因子身份验证就是指,需要两种身份验证才能完成账号有效性的验证,可以是密码、SSH 密钥,也可以是第三方服务,比如 Google Authenticator。这意味着单个验证方式的缺陷,不会影响账号的安全。本文我们将介绍如何在 Debian 服务器上启用双因子验证。 请注意,本文涉及到多次修改 SSH 配置,当你修改配置时,请确保有至少两个到服务器终端的连接。打开的终端将一直保持,即便 SSH 服务重启。第二终端意味着你可以修复你在SSH配置的错误。 密钥和密码验证的SSH SSH 支持对登录要求不止一个身份验证方法,我们首先启用密钥和密码验证。 在 /etc/sh/sshd_config 中的 SSH 服务器配置文件中的 AuthenticationMethods 选项中设置了身份验证方...阅读全文
Tmux 简单来说就是终端里的『窗口管理器』,如果我使用终端登录到远程主机并运行前台程序,那么这个窗口等于就被占用了,想要看一下 CPU 的使用率,就得再连接一次。但是如果在远程主机上运行 tmux,那么就可以开启多个控制台(类似于窗口),相当高效,比方说可以像下面这样: 需要注意的是,这里是在我本地使用 tmux,最好在远程主机也安装 tmux,这样就只需要连接一次。 Hello World 前面提到的窗口管理只是 tmux 功能的一小部分,另一个很有用的功能就是,连接到远程主机之后,一旦断开,那么当前账户登录的任务就被取消了,但是使用 tmux 可以在断开之后继续工作,下次登录可以查看。其他的功能还有: 窗口切换,每个窗口里还可以分割面板 配置方便,可以使用脚本 类似 vim 的双层操...阅读全文
AWS 在 EC2 关机后,不会再对计算资源计费;其他资源 比如EBS、Elastic IP 这些还会产生费用。如果你使用了预留实例,还需要考虑预留实例对计费方式的影响,会按照预留实例的计费标准计费。 这种灵活的计费方式,是 AWS EC2 默认就支持的,相比之下,国内绝大多数云主机厂商是不支持的。在开机、关机时(即主机状态发送转变时),AWS 会收取最少一分钟的计费费用。 如果你关机过程用了20秒,AWS会按照一分钟来收费;如果你关机过程用时 1分30秒,则AWS会按照1分30秒收取费用。很良心吧,很灵活吧。 AWS的文档还是要多看的,计费方式和九年前的AWS变化很大。最新版的文档可以从这里下载: https://docs.aws.amazon.com/AWSEC2/latest...阅读全文
国内腾讯云和阿里云的机器是没有ipv6的,但安装完 Debian 9 却发现默认启用了ipv6,所以需要将 IPv6 禁用,或者降低优先级。 方法一:降低 IPv6的优先级 使IPv4优先 默认的安装中,ipv4 和 ipv6 并存,并且 ipv6 却优先于 ipv4。如果不需要彻底关闭 ipv6,可以设置让 ipv4 优先于 ipv6。配置方式如下: echo "precedence ::ffff:0:0/96 100" >>/etc/gai.conf 当然也可以直接修改 /etc/gai.conf 文件,找到下面这一行 #precedence ::ffff:0:0/96 100 把前面的#去掉即可。 方法二:设置 GRUB 启动参数禁用 IPv6 编辑 /etc/default...阅读全文
PHP 7.2 Beta 1 已于上周发布,预计将于 11 月发布正式版。 PHP 7.2 Beta 1 实现了更多的 Sodium 扩展,针对现代和易于使用的加密、改进 opcache、无效 UTF-8 数据更好的 JSON 解码这些方面,以及自 PHP 7.1 以来的许多错误修复和其他改进。最新的版本和更多的细节可以通过 PHP.net 找到。 测试的系统信息 先看看 PHP 7.2 Beta 1 与 PHP 7.1.7, 7.0.21, 和 5.6.31 的性能对比 可以明显看到,在性能测试方面,从 PHP 5.6 到 PHP 7.0,性能有了显著的增长。不过这并没什么值得惊喜的,但看到使用 PHP 7.2 Beta 1 也有了很大的性能提升这倒是有点意想不到。由上图可看到,PHP...阅读全文
定义的 env 属性。 Console 新增 console.table() 方法。 Crypto crypto.createCipher() 和 crypto.createDecipher() 方法已被弃用,并被 crypto.createCipheriv() 和 crypto.createDecipheriv() 替代。 decipher.finaltol() 方法已弃用。 crypto.DEFAULT_ENCODING 属性已弃用。 新增 ECDH.convertKey() 方法。 crypto.fips 属性已弃用。 Dependencies V8 已升级至 6.6 版本。 OpenSSL 升级至 1.1.0h 版本。 完整更新内容请查阅发行说明: https...阅读全文
组可以在 WSL 中运行的全新应用程序,比如 Linux 版本的 Docker。 博客中同时说明了,目前对 WSL2 所依赖的 Linux 内核的提供方式进行了一些改进,已经从 Windows OS 镜像中删除了 Linux 内核,将会通过 Windows Update 方式分发给用户计算机。也就是 Linux 内核将像其它第三方驱动一样提供,这带来了更大的敏捷性和灵活性。了解具体安装方式,可以查看原博客。 Windows 10 version 2004 版本预计将于 5 月发布,Windows Insider 可以先行体验。...阅读全文
在使用 git 时,如果不是使用ssh 和 key 验证的方式,则每次提交都会让输入用户名和密码,会显得比较麻烦,在服务器上配置时也无法做到自动同步更新代码。那么如何解决这个问题呢?我们这里介绍除 ssh + key 以外的免密码登录方式。在全局中存储用户的账号密码 以 Windows 环境为例,在 %HOME% 目录中,一般为C:\Users\username(也可以是你自己创建的系统用户名目录)目录下,创建.git-credentials 文件。 文件内容为一行,样例如下: https://username:password@git.example.com 注:username对应的 git 服务器的用户名,password 为密码。然后再进入 git bash 中执行, git...阅读全文