InfraPub 为您找到相关结果 579

架构师详解 Nginx 架构

一个待处理事件的列表,使用非阻塞 I/O 方式调用“事件处理器”来处理该请。其处理方式称为“多路 IO 复用方法”,常的包括以下三种:select 模型、poll 模型、epoll 模型。 针对上面的技术我特整理了一下,有很多技术不是靠几句话能讲清楚,所以干脆找朋友录制了一些视频,很多问题其实答案很简单,但是背后的思考和逻辑不简单,要做到知其然还要知其所以然。如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java进阶群:433540541,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给大家。 四. Nginx 设计架构 Nginx 服务器使用 master/worker 多进程模式。多...阅读全文

博文 2018-05-01 23:10:47 debian.cn

Numpy 库准备放弃支持 Python 2

持 Python 3。 NumPy 的最后一个 Python 2 的版本,将被指定为一个长期支持版(LTS),味着我们会长期持续合并 Bug 修复和制作 Bug 补丁。LTS 版将会支持到 2019 年 12 月 31 日。 从 2020 年 1 月 1 日起,NumPy 社区对 Python 2 的支持,就彻底说再了。不过,PyPI 会继续支持 Python 2。如果有商业厂商希望在 2020 年 1 月 1 日后扩大 LTS 的支持,我们愿让他们使用 NumPy 官方 repo 中的 LTS 分支。...阅读全文

博文 2017-11-18 08:30:29 debian.cn

如何在 Debian 上添加和删除用户

您应该知道如何在一个新鲜的Linux服务器上执行的最基本的任务之一是添加和删除用户。当您创建一个新的系统,你往往只能给出默认root帐户。 虽然运行在root用户提供了大量的功能和灵活性,这也是危险的,可能是破坏性的。添加一个额外的,无特权的用户来执行常任务几乎总是一个更好的主。然后,您应为系统上可能有的任何其他用户创建其他帐户。 您仍然可以获取管理员权限,当你需要他们通过一个名为机制sudo 。 在本教程中,您将学习如何创建用户帐户,分配sudo特权,和删除用户。 如何添加用户 如果您作为root用户登录,您可以创建在通过键入任何时候一个新的用户: adduser sammy 如果要在谁被赋予了非root用户登录, sudo特权,因为在证明初始服务器设置向导 ,您可以添加通过键入新用...阅读全文

博文 2021-01-28 17:50:21 debian.cn

Apollo 配置中心简单介绍

=SomeCluster这里注apollo.cluster为全小写 4.3 自定义Namespace 【本节仅对公共组件配置或需要多个应用共享配置才需要,如没有相关需,可以跳过本节】 如果应用有公共组件(如hermes-producer,cat-client等)供其它应用使用,就需要通过自定义namespace来实现公共组件的配置。 4.3.1 新建Namespace 以hermes-producer为例,需要先新建一个namespace,新建namespace只有项目的管理员才有权限,管理员可以在页面左侧看到“添加Namespace”按钮。 点击后就进入namespace添加页面,Apollo会把应用所属的部门作为namespace的前缀,如FX。 4.3.2 关联到环境和集群 Namespace创建完,需...阅读全文

博文 2021-04-09 17:53:51 CSDN

你和 Linux 高手只差了一个 LFS

以篇幅不小,快则一两天,慢可能要一两周你才能跟着把系统构建完。一次做完你也不得能把知识完全消化。 然后,刚才我也提到了,为了让内容更精炼,更多的只是叙述和说明,并不会夹杂太多作者的思想和经验,看起来显得很枯燥。 最后,相信大家都不是太喜欢看教科书。当然,其实还有一个缺点,会给我们的学习带来比较大的阻力,这个我们后面会提到。 LFS 的定位 盘点了优缺点以后 LFS 的定位就很清晰了,它就是一本书,一本教科书。所以你不能要它像小说般有趣。而这本书的受众是,广大的程序员,学生,Linux 用户,以及任何一个对此感兴趣的人。 如何开始? 如果你英文水平尚可的话,请直达 LFS 官网: http://www.linuxfromscratch.org/lfs/ ,开始你的上帝之旅吧。 如果你希望阅...阅读全文

博文 2017-07-17 17:45:59 debian.cn

隐私声明

我们重视保护用户的隐私权,请您在浏览本网站以及使用本网站的特定服务前,仔细阅读本隐私权声明。使用本网站,即视为您同本隐私权声明并同本网站根据本隐私权声明收集、使用、披露您的部分信息。 本隐私权声明主要包括如下内容:当您浏览本网站时,我们向您收集哪些信息;我们如何使用这些信息;我们会在何种情况下披露这些信息;以及您的选择。 本隐私权声明适用于本网站收集的关于您的个人信息。请注本网站可能包含连接到其他网站的链接,我们对这些其他网站的隐私权做法不承担任何责任。我们建议您仔细阅读您所浏览的其他网站的隐私权声明。 1. 信息的收集 您向我们提供的信息。 如果您仅仅浏览本网站的一般性内容,我们并不要您提供任何个人信息。在您需要使用或浏览我们提供的特定服务或信息时(比如参...阅读全文

粘合万种芯片的“万能胶” 是摩尔定律的续命丹吗? - 硬件

胶"的出现是否味着那些曾在Chiplet领域有过探索的芯片公司们此前的努力都白费了?王宏波认为, Chiplet只是表示通过先进封装的方式将不同的芯片模块连接起来。"在Chiplet发展初期,各家都会根据自家的产品需对Chiplet进行独立的投入和研究,先各自在某些方面取得技术突破后,再汇聚成行业标准,这是正常的发展过程。"晶方科技副总经理刘宏钧认为,UCIe标准的制定,一定会用到部分原来已经定义过的协议、熟悉的协议,但也有一些新的标准和封装集成方式需要重新定义,以实现更好的互操作性。“UCIe并不推翻业界之前的工作,而是将小芯片互联的技术标准化了。"要理解UCIe对Chiplet时代即将产生的积极作用,可以将其同PCIe进行类比,在协议层上甚至可以将UCIe理解为PCIe在缩微互联结构...阅读全文

博文 2022-04-08 07:35:46 cnBeta.COM

HAProxy用法详解 最详细中文文档

。即使用户空间的占用率提高一倍,其CPU占用率也仅为10%,这也解释了为何7层处理对性能影响有限这一现象。由此,在高端系统上HAProxy的7层性能可轻易超过硬件负载均衡设备。 在生产环境中,在7层处理上使用HAProxy作为昂贵的高端硬件负载均衡设备故障故障时的紧急解决方案也时长可。硬件负载均衡设备在“报文”级别处理请,这在支持跨报文请(request across multiple packets)有着较高的难度,并且它们不缓冲任何数据,因此有着较长的响应时间。对应地,软件负载均衡设备使用TCP缓冲,可建立极长的请,且有着较大的响应时间。 二,安装配置HAProxy 以下实验环境均为 Debian i686平台。 1,安装haproxy [root@LB ~]# apt-get...阅读全文

博文 2014-05-10 17:14:46 debian.cn

改善 Debian Linux 软件包管理的七款工具

软件包,或者安装手动下载的软件包。 然而,它们都方便。使用得当,它们可以节省时间和精力,一些工具可以帮助你避免常问题。确定自己有什么样的要,然后选择最适合的工具。 原文标题:Improving Debian Linux Package Management: Seven Tools,51CTO译稿,中文原始链接这里。...阅读全文

博文 2021-01-28 17:50:21 debian.cn

Go 公布 2.0 设计草案:规模化和扩展性、支持泛型

高开发者处理错误的可能性。 为避免处理重复异常,错误检查和错误处理还必须是显性的,在程序文本中可。 参考示例: func main() { hex, err := ioutil.ReadAll(os.Stdin) if err != nil { log.Fatal(err) } data, err := parseHexdump(string(hex)) if err != nil { log.Fatal(err) } os.Stdout.Write(data) } 简化后: func main() { handle err { log.Fatal(err) } hex := check ioutil.ReadAll(os.Stdin) data := check parseHexdump...阅读全文

博文 2018-09-01 18:39:47 debian.cn

Go 泛型的括号选择:[ ] or ( )

Go 语言设计者 Robert Griesemer 和 Ian Lance Taylor 近日在 Golang 官方论坛发帖讨论关于泛型及其括号使用的问题。 他们提到很多人表达了对泛型语法的担忧,特别是在类型参数声明和函数实例以及泛型的括号选择方面。 常的计算机键盘提供了四对单字符对称括号,分别是小括号 ( )、方括号 [ ]、花括号 { } 以及尖括号 < >。基于此,他们解释了目前泛型草案在示例代码中使用小括号的原因。首先,Go 使用花括号来划分代码块、复合字面量(composite literals)和一些复合类型,因此几乎不可能在没有严重语法问题的情况下将花括号用于泛型。至于尖括号,解析器在某些情况下要 <> 需要 unbounded lookahead。 所以只剩下...阅读全文

博文 2020-07-16 10:38:01 debian.cn

Go 语言的大版本更新:Go 2.0 安排上了

提案包括更好的错误处理和泛型,而它们的草案已在今年的 GopherCon 大会上发布,等待更多的探索发展。至于剩余的提案,官方提到,他们不希望过度影响数百万 Go 开发者以及现在的 Go 代码,更不想冒着分裂生态系统的风险去改版 Go 2,因此 Go 2 无法做出太多变更,每一个变更都需要仔细选择。为此,这些提案都将使用新的提案评估流程来决定去留与发展。 提案评估流程 提案评估流程旨在收集对少数选定提案的反馈,以作出最终决定。这个过程或多或少会与发布周期并行进行,包括以下步骤: 提案选择:Go 开发团队选择少量看起来值得考虑接受的 Go 2 提案,但尚未做出最终决定。 提案反馈:Go 开发团队将发布一份列出所选提案的公告,公告会向社区解释提案的初衷并收集反馈。在这个步骤中,社区可提出...阅读全文

JavaFX 11 发布,与 JDK 拆分后的首个正式大版

JavaFX 11 发布了,JavaFX 是一个强大的图形和多媒体处理工具包集合,它允许开发者来设计、创建、测试、调试和部署富客户端程序,并且和 Java 一样跨平台。由于 JavaFX 库被写成了 Java API,因此 JavaFX 应用程序代码可以调用各种 Java 库中的 API,例如 JavaFX 应用程序可以使用 Java API 库来访问本地系统功能并且连接到基于服务器中间件的应用程序。JavaFX 可以自定义程序外观,CSS 将外观和样式与业务逻辑实现进行了分离,因此开发人员可以专注于编码工作。值得注的是,从 JDK 11 开始,JavaFX 模块与 JDK 分开提供 。 JavaFX 11 需要 JDK 10(必须是 OpenJDK 版本)或 JDK 11,建议使用...阅读全文

博文 2018-09-20 13:09:25 debian.cn

Debian 向左:或将迎来根本性改革 - OSCHINA

。 Debian的投票方式几乎是独一无二的。Debian 开发者不是简单地提供一个选项列表,而是自己创造所有这些选项,通常会有大量的选项,而且经常会引入许多相关讨论。 这个方案的初衷是希望能创造出尽可能反映整个 project 愿的结果,因此Debian 的投票方案允许一张选票中包含许多差异不大的选项。 但是,这也是一个再拖沓不过的方案。比如,在2019 年关于一场 systemd 辩论中,当时采用的是一般决议流程。投票一直没能开始,当时的 DPL Sam Hartman 就要尽快对决议进行投票。 这让一些参与者感到很不满。有人试图拒绝这个提前投票,但没有成功,于是对七个选项的投票就正常完成了。一些开发者认为这个过程又一次被滥用了,也对整个项目造成了损害。 “这种面临决定时的怯步,是不健康的...阅读全文

博文 2021-12-06 13:55:01 中文开源技术交流社区

说透IO多路复用模型_京东云开发者的博客

,会获取到此套接字的文件描述符。 然后,bind到指定的地址进行监听listen。这样,服务端就在特定的端口启动起来并进行监听了。 之后,利用开启accept方法来监听客户端的连接请。一旦有客户端连接,则将获取到当前客户端连接的connection文件描述符。 双方建立连接之后,就可以进行数据互传了。需要注的是,在循环开始的时候,务必每次都要重新设置当前connection的文件描述符,是因为文件描描述符表在内核中被修改过,如果不重置,将会导致异常的情况。 重新设置文件描述符后,就可以利用select函数从文件描述符表中,来轮询哪些文件描述符就绪了。此时系统会将用户态的文件描述符表发送到内核态进行调整,即将准备就绪的文件描述符进行置位,然后再发送给用户态的应用中来。 用户通过...阅读全文

博文 2023-01-01 15:13:50 CSDN博客

Linux:为什么那么多人讨厌 Systemd

,你几乎不能更改init系统。然而对大多数不深入sysadmining的用户来说,使用哪个init系统并不重要。 当然,每个经验丰富的Linux用户都有自己的看法。这里就不一一列举出来了,Linux社区充满了很多精通技术的开发人员,他们对Linux应该如何发展和成长有着自己的。这些观点大多数是不相关的,取决于具体的工作需。即便很多人投诉systemd,但却没有更完美的替代品出现,这也是systemd迅速扩张的原因。 我发现systemd单元和服务文件很容易维护,更重要的是,它可以很容易地转让给别人。systemd的拥护者给出了支持其的原因,比如很稳定,有一个容易的可配置的方式管理服务,也有一些中立人士不强烈反对systemd,但它的扩展速度实在令人担忧。它接管了很多不需要任何修复的功能...阅读全文

OpenAI掌门人Sam Altman:AI的下一个发展阶段_OneFlow

来源|Greylock OneFlow社区编译 翻译|胡燕君、贾川 预告了一整年的GPT-4迟迟没来,人们猜想OpenAI是不是要跳票了,更何况他们之前的得之作DALL-E也被开源Stable Diffusion打了个措手不及,再不来点深水炸弹业界地位危矣。 不过,就在大家以为今年OpenAI将以沉寂收场时,聊天机器人模型ChatGPT横空出世,让人们看到了AI的更大创造力,聚光灯也再度打到了OpenAI的身上。 今年9月,LinkedIn联合创始人Reid Hoffman与OpenAI首席执行官Sam Altman进行了一场对话,而肩负着宏伟使命且极富远的Altman就曾预言:AI即将迎来下一个发展阶段。如今,大型语言模型越来越先进,也出现了可以实现文本-图像相互转换的多模态模型,一...阅读全文

博文 2023-02-04 15:55:11 CSDN博客

谷歌是如何培养经理人的

时,不应该告诉他们所有事情,先让他们实践一下,然后再慢慢增加内容。在一开始需要教会他们的事情:如何提供反馈以及如何成为一个好的导师;建立起学习和发展情商的文化氛围——了解自己和团队,要管理好别人首先要管好自己。 培训并不是培养经理人唯一的手段。他们可以从其他经理人那里学习。应该鼓励他们互相交流和学习。另外,收集反馈是一种有效的评估手段。 把对经理人的反馈告诉他们。Calderon说,谷歌每年都会向员工收集反馈,让他们填写有关上司表现的问卷调查。这些信息会被反馈给经理人,帮助他们评价自己,并从中得到成长。先明确优秀经理人的定义,然后再引导他们朝这个目标努力。谷歌关于优秀经理人的特点清单可以在这个指南中找到。 除了经理人应该具备的行为特,Calderon还提到:经理人应该要融入团队,不要只做微...阅读全文

博文 2017-12-24 07:31:00 debian.cn

NVDIMM-P非易失内存标准公布:断电不丢数据、兼容DDR4

。 - 大容量:支持扩展的内存寻址功能。 - 支持即插即用:在电脑开机时可以直接插入标准的双列内存插槽,并立刻与同一总线上的DDR内存交互操作。 NVDIMM-P的主要特: - 与现有DDR通道完全兼容,包括物理接口、电气性能、协议、时钟。 - 保证为下一代CPU插槽增加的针脚尽可能少。 - 协议支持数据读取时的不确定延迟。 - 确保数据在非易失内存中的事务性操作。 - 从NAND到DRAM多种延迟模式的支持(在模块级别)。 - 内存本身具备高可靠性、链路错误保护功能。 事实上,NVDIMM是一个系列标准,除了这里说的NVDIMM-P,还有NVDIMM-F、NVDIMM-N、NVDIMM-H。 NVDIMM-F本质上就是DDR接口的SSD固态盘,只使用NAND闪存,优点是延迟低(纳秒级别)、带宽高...阅读全文

Debian Live 项目的剧变

Learmonth 要为他的包换一个不同的名字的时候,他得到了一个「有趣」的回复: 应该注到, live-build 不是一个 Debian 项目,它是一个声称自己是官方 Debian 项目的外部项目,这是一个需要我们解决的问题。 这不是命名空间的问题,我们要将以目前维护的 live-config 和 live-boot 包为基础,把它们加入到 Debian 的本地项目。如果迫不得已的话,这将会有很多分支,但是我希望它不要发生,这样的话我们就可以把这些包整合到 Debian 中并继续以一种协作的方式去开发。 live-build 已经被 debian-cd 放弃,live-build-ng 将会取代它。至少在一个精简的 Debian 环境中,live-build 会被放弃。我们(开发团队)正在与...阅读全文

博文 2021-01-28 17:50:14 debian.cn

Debian瞻前 微软顾后:安全改进是否会产生负面影响

在许多互联网领域,尤其是Web PKI和SSL/TLS行业中,我们大多生活在过去的决定中。脆皮密码、差强人的协议设计以及不怎么标准的软件始终牵绊着前进的步伐。往往一个新操作系统或库的问世都会迅速被大量使用,然后整个生态系统需要花上很多年的时间处理各种遗留的设计缺陷。 随着互联网规模和重要性的增长,我们试图做出更明智的决定,以避免或至少缩短这一周期。最近,两个操作系统进行了更新,反映了两种不同的保持生态健康的做法: Debian推动了其预发行版本的更改,将只支持TLS 1.2;而微软则开始在Windows Server 2008添加TLS 1.2支持。 这两个选择代表了相反的观点 - 一个展望未来,另一个回顾过去。 Debian发布了一个新版本的OpenSSL库,用于其不稳定的构建 - 一...阅读全文

博文 2017-08-11 09:54:18 debian.cn

树莓派64位系统Debian 9先行测评:性能最高提升30倍

df -Th 完整测试截图可以在这里下载(感谢yoyojacky提供)。 总结: GEEEKPI 团队最终对比表格如下: 测试项目 Raspbian2017-03-03 Debian 9 Arm64bit 提升倍数 系统信息 Arm 32bit/ext4文件系统 Aarm64bit/f2fs文件系统 文件系统测试 CPU单线程 367.2971 25.1195 14.62倍 四线程 1017.6742 62.6079 16.40倍 八线程 1920.0601 62.6711 30.64倍 内存随机 5.7678 2.1925 2.63倍 内存连续 6.3309 2.9392 2.15倍 网络性能 74.6Mbps 94.3Mbps 1.26倍 文件连续读写 5.7655 7.1506 下文...阅读全文

博文 2021-01-28 17:50:25 debian.cn

Ruby 2.5.0 稳定版发布

#14123] 逆序打印(从旧到新)调用跟踪和错误消息。当在终端(TTY)中用较长的调用跟踪信息时,你可以从最底部看到直接触发问题的行。需要注的是,仅当在直接输出到终端时,才会逆序打印。[功能 #8661] [试验性] 性能提升 通过在字节码中移除了全部 trace 指令提升了大约 5-10% 的性能。trace 指令的引入是为了提供 TracePoint的支持。然而,在大多数情况,TracePoint 不会被用到,trace 指令增加了额外的开销。作为替代,我们实现了一个动态指令技术,详情 [功能 #14104]。 通过懒惰 Proc 分配使 block 参数传递代码块(例如 def foo(&b); bar(&b); end)的性能相较于 Ruby 2.4 提升了约 3 倍。[功能...阅读全文

博文 2017-12-25 21:59:41 debian.cn

谷歌元老施密特隐退:传奇落幕 新篇开启

在谷歌80%以上的收入依然来自于广告,可施密特对于谷歌的重要义。 但是大家也别以为他只是赚了钱而已, 在商业和技术界摸爬滚打20多年的经验帮助谷歌在强敌林立的时代也能够野蛮生长。最关键的点当属对微软的态度上,施密特上一次栽跟头就是因为动了微软的蛋糕,而那次经验也让他在谷歌的运作上更为圆滑。加入谷歌之后施密特一直都强调,“我们没有和微软竞争。”直到谷歌成长到能和微软掰手腕之后,他们才开始涉足操作系统、浏览器等业务,是佩奇和布林之前没想到做这些吗?并不是,谷歌能在微软等巨头的阴影之下和平崛起,施密特绝对是首功。 而他的圆滑也不仅仅体现在这一方面,在对待中国市场的态度上,施密特就比两位创始人有远得多,谷歌中国启动仪式施密特就是亲自参加,并且在和政府部门的协调上,施密特也做得很好。但在2010...阅读全文

博文 2017-12-24 09:18:44 debian.cn

Jonathan Carter 当选新一任 Debian 项目负责人

性和透明度。更好地跟踪本地团队。改进 DPL 更新。 其中他提到改善在线协作的能力,除了使用当前的 IRC 之类的工具,还需要用上共享屏幕与视频剪辑等新的解决方案,特别是因为 SARS-CoV-2 病毒导致 COVID-19 肺炎,这场危机使今年成为考虑使用其它协作工具特别重要的一年。同时关于线上协作,还将考虑增加年度在线 DebConf。 Jonathan Carter 还希望促成内部导师制度,在 Debian 中培养一种文化,在这种文化中,对他人代码的审查和指导同样受到重视,并且将有更多的 Debian 开发者被鼓励花更多的时间在这一点上。 另一方面,Jonathan 认为“Debian Developer”(Debian 开发者)一词已经改变了原,例如我们说“Android 开发者...阅读全文

博文 2020-04-22 13:50:05 debian.cn

Linus Torvalds谈ECC内存的重要性 痛斥英特尔

是说谎的混蛋,这些问题已经存在了好几代了,但这些混账的家伙却乐此不疲地把坏掉的硬件卖给消费者,并声称这是一种 "攻击性的市场策略",而实际上翻译一下就是'我们在偷工减料'。" Torvalds继续在他的长文中说:"'现代DRAM非常可靠,不需要ECC'一直都是小孩子的睡前故事,翻车的次数不是一次两次。是的,我为此很生气。你可以找到我抱怨这个的字面思,已经几十年了。我不想说'我是对的'。我希望这个问题得到解决,我希望有ECC,而AMD做到了。英特尔没有。" 他的评论赞扬了AMD更广泛地支持ECC内存,尤其是在消费类台式机硬件上配备,而英特尔的市场细分显而易扼杀了大多数消费市场产品对ECC内存的采用。 这些言论是在Torvalds还在AVX-512问题上抨击英特尔几个月后发表的。也是在...阅读全文

博文 2021-01-05 13:11:20 debian.cn

Django 面临困境 欲重组核心团队

由于缺乏新的贡献者加入,Django 董事会于 9 月 23 日发起了一份 “改革草案 ”,有对项目当前的管理模式进行整改。11 月 20 日,Django 董事会成员,同时也是核心团队成员的 James Bennett ,在其博客上发布了一篇名为“Core no more”的文章,详细描述了 Django 当前存在的问题,以及草案的大内容。 Django 是非常流行的 Python Web 框架,被世界各地被许多大型企业以及组织采用,但也遇到了多数大型开源项目难以避免的问题:活跃贡献者流失,新贡献者供不应。James Bennett 提到,不少开源项目依赖企业支持来解决此类问题,借由企业员工帮忙维护项目以确保持续发展。Django 早期也是以这样的方式生存,遗憾的是,最终没有发展成...阅读全文

博文 2018-11-23 10:24:21 debian.cn

钉钉发送报警消息的Python实现

我司使用钉钉作为主要的内部通讯工具,基本上大家在电脑和手机上都开着,消息可以第一时间查看,报警消息的即时性要比较高,我们计划使用钉钉来发送报警通知。本文将简要介绍发送消息的API使用样例。钉钉的API接口文档,请查阅钉钉开放平台。 介绍如何用 Python 实现钉钉自动发送消息,你可以用来和报警平台整合,或者做ChatOps。 获取 access token 要使用钉钉发送消息,首先需要获取access token,代码如下: def get_access_token(): url = 'https://oapi.dingtalk.com/gettoken?corpid=%s&corpsecret=%s' % (corp_id, corp_secret) request...阅读全文

博文 2018-04-27 08:51:33 debian.cn

Java Annotations详解

MyAnnotation { String value(); } 上面的代码限制了该注释只能用来注释方法(而不是类、成员变量之类的) ElementType.ANNOTATION_TYPE ElementType.CONSTRUCTOR ElementType.FIELD ElementType.LOCAL_VARIABLE ElementType.METHOD ElementType.PACKAGE ElementType.PARAMETER ElementType.TYPE 上面大多数数值都是可以文知的,其中ANNOTATION_TYPE表示只能用来注释注释类型(Annotation),就像@Target和@Retention一样。 @Inherited @Inherited表明,一个子类实现了继承了父类...阅读全文

博文 2013-03-02 08:04:55 CSDN博客

2017 年会是 Serverless 爆发之年吗

定运行。通过以一种松散编排的方式将函数和服务组合起来,能够构建易于理解、易于管理的复杂后端系统。 为 lambda 等计算服务编写的代码应该以无状态方式进行构建,这样会让无状态功能很强大,让平台得以迅速扩展,处理数量不断变化的请或者事件。 设计基于推送的、事件驱动的管道可以构建满足任何用途的服务器架构。系统可以一开始就构建成无服务器,也可以逐步设计现有的单体型应用程序,以便充分发挥这种架构的优势。最灵活、最强大的无服务器设计是事件驱动型的。 构建事件驱动的、基于推送的系统常常有利于降低成本和系统复杂性,但是要注,并不是任何情况下都是适当的或者容易实现的。 创建更强大的前端由于 Lambda 的定价基于请数量、执行时间段以及分配的内存量,所以代码执行需要越快越好。数据签名的令牌让前端可以...阅读全文

博文 2021-01-28 17:50:27 debian.cn

Apollo 分布式配置中心详解

等方式已经越来越无法满足开发人员对配置管理的需。Apollo 配置中心应运而生! Apollo 配置中心功能特点 正是基于配置的特殊性, Apollo 在设计之初就立志于成为一个有治理能力的配置管理平台。当前提供了以下一些特性, 统一管理不同环境、不同集群的配置 Apollo 提供了一个统一界面集中式管理不同环境(environment)、不同集群(cluster)、不同命名空间(namespace)的配置。同一份代码部署在不同的集群,可以有不同的配置,通过命名空间(namespace)可以很方便的支持多个不同应用共享同一份配置,同时还允许应用对共享的配置进行覆盖。 配置修改实时生效(热发布) 用户在 Apollo 修改完配置并发布后,客户端能实时(1秒)接收到最新的配置,并通知到应用程序...阅读全文

博文 2020-04-12 12:16:26 debian.cn

Debian 10 Buster 正式版即将发布

经被细分成为组件。要安装整个软件栈,可以安装 mailman3-full 来获取所有组件。 已有的 Postgresql 数据库都需要重新索引 由于 glibc 本地数据的更新,放入文本索引中的信息排序的方式将会改变,因为重新索引是有益的,这样在将来就不会有数据破坏发生。 默认 Bash 5.0 你可能已经了解了 Bash 5.0 的新特点 ,在 Debian 中已经是该版本了。 实现了 /usr/merge 我们已经分享过一个优秀的 freedesktop 读物 ,介绍了 /usr/merge 带来了什么。有一些事项需要注。当 Debian 想要整个过渡时,可能由于未预的情况,一些二进制文件可能并没有做这些改变。需要指出的一点是,/var 和 /etc 不会被触及,因此使用容器或者云技...阅读全文

博文 2019-04-29 11:04:15 debian.cn

80% 的 Oracle JDK 用户正在考虑替代方案

在 2019 年,Oracle 决定更改许可模式,从提供免费的 Java 更新转变为要付费订阅,这一重大变化无疑在市场上掀起了一片波澜。之后,尽管有一些使用 Java 的公司扔坚持使用 Oracle 并承担了增加的支持成本,但许多公司也在步步为营,谋新的选择。 据 Azul Systems 的一项新调查显示,目前有 80% 的 Oracle JDK 用户正在考虑其他选择。Snyk 和 Oracle 联合进行的 2018 年调查层表明,Oracle JDK 用户以前占 Java 用户的很大比例。该调查发现 70% 的受访者使用 Oracle JDK,21% 的受访者使用 OpenJDK,9% 的受访者使用其他 JDK 实现,例如 Eclipse OpenJ9/IBM J9、Android...阅读全文

博文 2020-05-27 08:13:46 debian.cn

Redis 命令、特性介绍与性能调优

、Hyperloglogs等。 Redis具备LRU淘汰、事务实现、以及不同级别的硬盘持久化等能力,并且支持副本集和通过Redis Sentinel实现的高可用方案,同时还支持通过Redis Cluster实现的数据自动分片能力。 Redis的主要功能都基于单线程模型实现,也就是说Redis使用一个线程来服务所有的客户端请,同时Redis采用了非阻塞式IO,并精细地优化各种命令的算法时间复杂度,这些信息味着: Redis是线程安全的(因为只有一个线程),其所有操作都是原子的,不会因并发产生数据异常 Redis的速度非常快(因为使用非阻塞式IO,且大部分命令的算法时间复杂度都是O(1)) 使用高耗时的Redis命令是很危险的,会占用唯一的一个线程的大量处理时间,导致所有的请都被拖慢。(例如时间复杂度为O(N)的...阅读全文

博文 2018-10-27 10:37:55 debian.cn

Kubernetes 1.9发布:Apps Workloads通用版本与生态系统扩展

(简称GA) 我们兴奋地向大家宣布,apps/v1 Workloads API[1]通用版本现在已经默认启用。Apps Workloads API负责将DaemonSet、Deployment、ReplicaSet以及StatefulSet API等整合起来,从而构建起在Kubernetes内长期运行无状态与有状态工作负载的根本性基础。需要强调的是,Batch Workloads API(Job与CronJob)并不在Apps Workloads API的整合范畴之内,未来前者将推出自己的独立通用稳定版。 Deployment与ReplicaSet属于Kubernetes当中使用频率最高的两个对象,根据一年多以来收集到的实际使用与反馈,二者的稳定性已经得到极大提高。SIG Apps[2]也...阅读全文

博文 2017-12-17 01:00:00 debian.cn

Icinga Web2 v2.7.0 发布 轻量级和可扩展的 web 接口

Icinga Web 2 是 Icinga 项目开发的下一代开源监控 Web 接口、框架和命令行接口,支持 Icinga 2、Icinga Core 和与 IDO 数据库兼容的任何其他监控后端。 Icinga’s Amazingness Spreads Further 增加日语支持增加乌克兰语支持不再配置中翻译 pane 和 dashlet name Modules – 其他功能 无论您是否想要连接到配置表单的处理中,都可以执行自己的 Ajax 请,或者使用花哨的图形增强我们的多选择视图。 允许连接到配置窗体的处理中允许完全自定义单击和提交处理将 Detailview 扩展集成到多选择视图中 UI——日常例程和事件管理、增强 添加色盲主题改善表格的外观使 ctrl-click 打开新选项...阅读全文

博文 2019-08-06 12:18:01 debian.cn

高性能日志采集工具 logpipe 简单介绍

日志文件增长,某些应用会在目标目录下产生多个日志文件甚至现在不能确定将来的日志文件名,架构上要支持多输入多输出流式日志采集传输,为了达成以上需,我研究了所需技术,评估实现难度并不高,就自研了 logpipe。 logpipe 是一个分布式、高可用的用于采集、传输、对接落地的日志工具,采用了插件风格的框架结构设计,支持多输入多输出按需配置组件用于流式日志收集架构,无第三方依赖。 logpipe 的一种用法是能异步实时监控集群里的所有日志目录,一旦有文件新增或追加写,立即采集并传输到大存储上以相同日志文件名合并落地,或者写入 HDFS。异步味着不影响应用输出日志的性能,实时味着一有日志立即采集,很多日志采集工具如 flume-ng、logstash 介绍文档通篇不提采集方式是否实时还是周期...阅读全文

Debian 往事: 与已故创始人 Ian Murdock 的昔日访谈

的灵感有一部分也来自于 Linux。 事实上 Debian 的子任务思路就是继承了 Linux 的理念。有些人负责写文件系统,有些人负责写驱动程式。就算你不过是路人甲,你要是给 Linux 编写一套新的文件系统然后发给 Linus,说不定就你写的东西就真的被采用了。 所以我希望 Debian 的用户也能够毫无顾忌地给我们提,比如「嘿你知道吗,我觉得在 Debian 的系统里加这个软件包会超赞的。」我觉得这是件大好事,因为只要跟着我们发布的系统模型走,用户是完全有可能开发出自己的软件包的。而且如果你遵循我们的指南和标准,那你的软件包在我们的系统上运行应该不成问题。 Deb-Ian 这个名字的来源想必已是众所周知的了;Murdock 在 1999 年告诉我, 我妻子叫 Deb,我叫 Ian...阅读全文

博文 2021-01-28 17:50:13 debian.cn

Kafka 3.0新特性全面曝光,真香!

:使用`/latest_producer_id_block`节点来保存PID块,主要用于能够保证生产者的任写入请都能够得到响应。/log_dir_event_notification:主要用于保存当broker当中某些LogDir出现异常时候,例如磁盘损坏,文件读写失败等异常时候,向ZK当中增加一个通知序号,controller监听到这个节点的变化之后,就会做出对应的处理操作。以上就是kafka在zk当中保留的所有的所有的相关的元数据信息,这些元数据信息保证了kafka集群的正常运行。二、kafka3的安装配置在kafka3的版本当中已经彻底去掉了对zk的依赖,如果没有了zk集群,那么kafka当中是如何保存元数据信息的呢,这里我们通过kafka3的集群来一探究竟。(一)kafka安装配置...阅读全文

博文 2022-04-28 16:02:11 mp.weixin.qq.com

案例:Redis命令不当 引起数据库雪崩 造成数百万损失

较多:字符串(String),哈希(Hash),列表(List),集合(Set),有序集合(Sorted Set), Bitmap, HyperLogLog和地理空间索引(geospatial)等,需要根据业务场景选择合适的类型。 常的如:String可以用作普通的K-V、计数类;Hash可以用作对象如商品、经纪人等,包含较多属性的信息;List可以用作消息队列、粉丝/关注列表等;Set可以用于推荐;Sorted Set可以用于排行榜等! 9.命名规范 虽然说Redis支持多个数据库(默认32个,可以配置更多),但是除了默认的0号库以外,其它的都需要通过一个额外请才能使用。所以用前缀作为命名空间可能会更明智一点。 另外,在使用前缀作为命名空间区隔不同key的时候,最好在程序中使用全局配置...阅读全文

博文 2018-10-27 10:18:18 debian.cn

DebianLive 11.1.0 及 11.0.0 (32及64位元)英语版本 Xfce 桌面系统中文包

配的中文包,都可以将适用系统的大部分桌面,菜单,副菜单,图标标题及弹出提示变成简体中文 (zhcn) 或繁体中文(zhhk)。请注:所有中文包都侬赖系统巳经安装好一个合适的半中文包(详情请甲栏),去提供中文字型和中文输入法。 下载及用法: 更多有关这些半中文包及中文包的资料及使用方法,可以参考“icake DebianLive 中文包使用手册”。这本使用手册、半中文包及中文包,已上传到我的公开分享目录中,网址请看本欗第一个帖,它们亦可从这个网址下载: https://sourceforge.net/projects/icake-debianlive-chinese-debs/ 我希望这些中文包,会对 Debian 爱好者有用。更希望试用过中文包的用者,能将须要改善的地方告诉我。谢谢。...阅读全文

SolydXK 9 正式发布,基于 Debian 的发行

SolydXK 9 已正式发布,它基于最近发布的 Debian 9。 自上个 beta 版本发布以来,团队一直在测试、改进和开发。除了基于新的 Debian 9,SolydXK 已默认删除了 Backports 存储库(尽管可以重新启用),添加了一个工具来协助分区加密以及引入新的桌面主题。 更新内容: SolydX 和 SolydK 的新主题,可以选择一个亮色或暗色的主题 SolydXK 系统现在有一个 GUI,你可以在其中加密分区(和你的 USB闪存驱动器),本地化你的系统,选择最快的存储库,管理软件包和清理系统。此应用程序的加密部分现可正常工作,但仍处于测试阶段,注风险 默认情况下,后端存储库已被删除,但可以在新的 SolydXK 系统应用程序中启用 solydx/k-info 软件...阅读全文

博文 2017-07-15 10:19:55 debian.cn

Debian 终于完全删除了 Python 2 相关的软件包

Debian 的 Bug 日志记录显示,目前 Debian 已经完全删除了与 Python 2 相关的软件包。2022 年 12 月 27 日,一名维护者发表邮件称要删除 Debian 中 “残留” 的 Python 2 相关软件包,但这需要强制执行:gnat-gps (Fix coming when GNAT 12 is complete: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1015974#10)python-defaults (earlier RM bug)​现在,这项工作已顺利完成,味着 Debian 终于完全删除了 Python 2。许多开发者也感叹来之不易。Python 2 早在 2020 年就已正式结束支持,而...阅读全文

Apache Kafka发布 3.0 正式版

昨天,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),这味着用户现在默认获得排序和持久性...阅读全文

博文 2021-09-26 14:13:03 joseph

为什么使用 JavaScript 开发物联网?

嵌入式设备与JavaScript看似是来自两个不同世界的两个物种,八竿子都打不着。但是随着JavaScript 开疆扩土,从浏览器逆袭登陆到服务端之后又与物联网有了交集。 物联网的未来需要一门解释性语言 传统的嵌入式开发相对于WEB开发来说门槛高,碎片化严重,平台复杂。C/C++性能高,对设备资源要低,但是对开发者的要高,开发效率低。 物联网与互联网、移动互联网的基因是相同的,大量的应用才能铸就生态的繁荣。而使用C/C++来开发应用是及其低效和昂贵的,纵观互联网、移动互联网,应用开发是解释性语言的天下。互联网的PHP、JavaScript,移动互联网的Java,JavaScript,而物联网还是使用C/C++。因此,物联网的未来需要一门解释性语言。 JavaScript是最好的选择 相...阅读全文

博文 2021-01-28 17:50:12 debian.cn

Debian 10使用 Wine 安装配置微信、QQ与TIM

Debian10安装wine及用wine安装微信、QQ与TIM 作者:幻影剑客 概览 本文适用于Linux发行版Debian 10,主要参考winehq官方文档Debian部分,Debian wiki的wine,还有其他网上文章。总结起来,就是Debian 10的情况,要先安装faudio依赖,再安装wine官方版。安装完后要做启动配置、字体配置、输入框配置。如果想要更多功能还得做更多配置,这里没介绍了。 注wine的每个版本甚至在不同发行版的安装都有差别,需要先看winehq官方介绍、你的Linux发行版关于wine的wiki,然后是网上其他资料。下面部分是正式安装介绍。 搞定FAudio部分依赖 winehq的Debian安装页面指出,要先安装依赖FAudio, 官方链接。这是因为...阅读全文

深入理解Golang之context

context是Go并发编程中常用到一种编程模式。本文将从为什么需要context,深入了解context的实现原理,以了解如何使用context。 作者:Turling_hu 来源: 掘金 原文链接: https://juejin.im/post/5e52688c51882549417fc671前言这篇文章将介绍Golang并发编程中常用到一种编程模式:context。本文将从为什么需要context出发,深入了解context的实现原理,以及了解如何使用context。为什么需要context在并发程序中,由于超时、取消操作或者一些异常情况,往往需要进行抢占操作或者中断后续操作。熟悉channel的朋友应该都过使用done channel来处理此类问题。比如以下这个例子:func...阅读全文

博文 2021-01-27 09:05:27 知乎

如何写好技术文档 — 来自十多年的文档经验总结

注释、类注释、方法注释,要都是能准确说明其用法。 ## 设计文档 ## 很多公司或者团队在项目开始前都要有设计文档,设计是项目实施的第一步,所以在设计文档书写的过程中要尽可能考虑周全,例如该项目的存储、交互、隐私…… 好的设计文档应该包含以下几个部分: 1. 设计目标 2. 实现的策略 3. 各种利弊权衡和具体决策 4. 替代方案 5. 各种方案的优缺点 写设计文档的过程也你对整个项目做规划、思考可能出现问题的过程,设计的越详细、思考的越多,未来遇到问题的可能性就会越小。 ## 引导类文档 ## 引导类文档也很常,一般都是Step by Step的形式。比如我们在使用某个框架或者工具的时候,一般都会有个引导类的文档一步一步帮助你快速上手。 大家写引导类文章大家非常容易犯的一个错误就是...阅读全文

博文 2021-07-30 16:15:13 joseph

Systemd 及 Service 文件含义解析

# graceful stop. Normally, Systemd sendsSIGTERM signal right after the # ExecStop, which would kill httpd. We aresending useless SIGCONT here to give # httpd time to finish. KillSignal=SIGCONT PrivateTmp=true [Install] WantedBy=multi-user.target ``` 这个文件由三个部分组成:Unit、Service、Install。 [Unit] 主要是为了解决依赖关系。常的添加 Requires、After,如果这个依赖是可选的,那么是 Wants、After。依赖关系通常被用...阅读全文

博文 2021-02-17 10:02:50 joseph