InfraPub 为您找到相关结果 683

Python的闭包和装饰器

回绑定变量后的函数(也即闭包),此时即便生成闭包的环境(父函数)已经释放,闭包仍然存在,这个过程很像类(父函数)生成实例(闭包),不同的是父函数只在调用时执行,执行完毕后其环境就会释放,而类则在文件执行时创建,一般程序执行完毕后作用域才释放,因此对一些需要重用的功能且不足以定义为类的行为,使用闭包会比使用类占用更少的资源,且更轻巧灵活,现举一例:假设我们仅仅想打印出各类物的叫声,分别以类和闭包来实现: 可以看到输出结果是完全一样的,但显然类的实现相对繁琐,且这里只是想输出一下物的叫声,定义一个 Animal 类未免小题大做,而且 voice 函数在执行完毕后,其作用域就已经释放,但 Animal 类及其实例 dog 的相应属性却一直贮存在内存中: 而这种占用对于实现该功能后,则是没有必要...阅读全文

博文 2014-07-23 17:06:38 debian.cn

Kotlin 一统天下?Kotlin/Native 支持 iOS 和 Web 开发

/Native 已支持用于开发 iOS 应用,这也将是 Kotlin/Native 0.4 的特性之一。虽然对 iOS 开发的支持仍处于早期阶段,但确实已经实现了,这是在所有平台上使用 Kotlin 进行开发的重要一步。 官方还特意展示了利用 Kotlin/Native 开发的两款应用(Spinner app (GitHub)、KotlinConf app (GitHub)),它们都可以运行于 iOS 和 Android 平台。Android 和 iOS 平台共享了不少代码,其中包括大多数图形处理、声音播放和用户输入响应代码。 两款应用都已开源,你可以将它们作为模板,仅使用 Kotlin 构建自己的跨平台移应用。点此可了解其中一款应用。 IDE 对 Kotlin/Native 的支持 Kotlin...阅读全文

博文 2017-11-05 19:28:14 debian.cn

深入理解Golang之context

Server、Connection、Request,不仅将上游的信息共享给下游任务,同时实现了上游可发送取消信号取消所有下游任务,而下游任务自行取消不会影响上游任务。结context主要用于父子任务之间的同步取消信号,本质上是一种协程调度的方式。另外在使用context时有两点值得注意:上游任务仅仅使用context通知下游任务不再需要,但不会直接干涉和中断下游任务的执行,由下游任务自行决定后续的处理操作,也就是说context的取消操作是无侵入的;context是线程安全的,因为context本身是不可变的(immutable),因此可以放心地在多个协程中传递使用。参考资料1、Package context2、Go Concurrency Patterns: Context3...阅读全文

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

Debian Linux下LNMP环境配置

-mysql php5-memcache php5-curl 如上命令安装了php5-memcache的扩展,因此继续安装Memcached: apt-get install memcached 安装完成之后,可以使用“php5-fpm -v”查看PHP的版本。 4.安装Nginx 我在安装的时候直接安装了Nginx的全部扩展功能(nginx-full),后边可能会有功能性的增强,所以在安装的时候直接全部安装了: apt-get install -y nginx-full 然后启Nginx: service nginx start 放问地址http://ip,如果看到如下所示,就说明你的Nginx安装正常。 接下来配置Nginx,Nginx的配置文件在“/etc/nginx/sites...阅读全文

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

企业制定开源战略的免费指南

的战略文件战略方法关键考虑因素其他组成确定投资回报率投资目标 这里关键的第一步是创建和将你的开源策略形成文字,该策略将“帮助你最大限度地提高组织从开源中获得的利益。”同时,你详细的策略可以帮助你避免因错误而导致的困难,例如:选择错误的许可证或不正确地维护代码。根据指南,该文件还可以: 让领导者感到兴奋并参与帮助在公司内获得支持促进分散的多部门组织的决策帮助建立一个健康的社区解释贵公司的开源方式和对其使用的支持明确贵公司在社区驱的外部研发中投资的地方,以及贵公司将重点放在增值差异化的地方 Salesforce 的软件架构师兼本指南的撰稿人 Ian Varley 说:“在 Salesforce 内,我们有内部文件,我们将这些围绕开源战略指导和鼓励的文件分发给我们的工程团队。其中鼓励创建和使用开...阅读全文

博文 2018-12-17 13:05:32 debian.cn

第8个LTS版本 Ubuntu 20.04 将带来哪些新特性?

存驱、数码相机和 MP3 播放器中使用最为充分,你平时用这些电子产品的时候,多半就使用到了 exFAT 技术。 另一方面,在 19.10 版本中引入的 ZFS 作为根目录的支持会进一步得到改进,但是,它将保持实验状态。 关于 ZFS 的争论近期也因为 Linus Torvalds 的参与而白热化,他在某个论坛上讨论关于内核的相关问题时,提到了 ZFS 并表明了自己的态度,在 Oracle 对 ZFS 的代码进行重新授权以使其能更友好地被引入到 Linux 内核主线之前,他不会推荐使用 ZFS,同时,即便抛开许可证的原因,Linus 也觉得 ZFS 的综合性能并不特别强。随后有人公开宣称 Linus 不懂 ZFS。 此外,20.04 其它增强功能包括: GNOME 从 v3.34 升级到...阅读全文

博文 2020-01-27 09:36:30 debian.cn

OpenJDK 14 性能提升,但 OpenJDK 8 仍是王者

Bork 文件加密软件包进行测试,在经过测试的版本中,性能基本上没有变化。 自 OpenJDK 8 以来,DaCapo 的 H2 基准被建模为类似于 JDBCbench 的内存中(in-memory)基准,其性能得到了很好的提升,与此前的版本相比,OpenJDK 14 再次以微弱的优势获得了第一名。 可以看到,基于 Python Pybench 的 Jython 基准测试也是 OpenJDK 8 拥有最佳成绩的众多案例之一。 在运行 Daytrader 基准测试的 Tradebeans 测试中,OpenJDK 14 再度以微弱的优势拿下最佳的成绩。 就像打乒乓球一样,Renaissance 的 Scala Dotty 基准测试提供了一个类似的例子,说明 OpenJDK 的性能也会上下波。在此次测...阅读全文

博文 2020-03-22 08:46:01 debian.cn

Solus Linux 正在打造“现代化的 Linux 发行版”,不依赖 GNU

件/用户选择等)只有UEFI,没有其它传统引导方式完全开源,包括引导程序/重建脚本针对较重的工作负载进行了认真的优化第三方应用程序仅依赖于容器,没有兼容性漏洞仅支持 Wayland完全无状态的管理工具和补丁上游…… 同时,对 Linux 的“不良”参与者不会容忍。例如,将不会容忍 NVIDIA 在其 GPU 上缺乏对 Wayland 加速的支持,NVIDIA 专有驱程序将被发行版列入黑名单。 Ikey Doherty 是 Solus OS 的作者,这是 Linux 发行版的后起之秀,拥有自己的环境和软件库。系统使用自身开发的 Budgie 桌面环境,遵循极简主义,观感扁平化且现代。其“最早”基于 Debian,不过于 2013 年停止该项目,后来不基于任何发行版重头开发了一个独立的...阅读全文

博文 2020-07-12 09:08:23 debian.cn

2021勒索软件报告:平均支付赎金增长171% 黑客最高要价3000万美元

软件。RagnarLocker排名第二,泄漏了全球26家受害企业的数据。值得一提的是,美国司法部在2021年1月宣布协调国际执法行,瓦解NetWalker勒索软件团伙。由NetWalker运营商管理的托管泄漏数据的暗网域名已经无法访问。图片来自于 派拓网络全球威胁情报团队 Unit 42最后报告提出三项建议,分别是初始进入、备份和恢复流程以及安全监控。在初始进入方面,建议企业使用者保持对电子邮件安全的认识和培训,并在恶意电子邮件进入邮箱后立即识别和补救。其次企业要进行适当的修补管理,并审查哪些服务可能暴露在互联网上。再者远端桌面服务要正确配置并确保安全,尽可能使用最低许可权,并制定策略对付勒索软件。在备份和恢复流程方面,企业需备份资料,并提前规划好适当的恢复流程。企业要确保所有备份都在离线...阅读全文

2022年云原生服务网格展露的五大趋势

近日,OSCHINA 和 Gitee 联合发布了《2022 中国开源开发者报告》。其中,云原生社区创始人宋净超在报告中对开源云原生服务网格领域进行了深入解读,以下为主要观点。2022 云原生服务网格五大趋势2022 年,云原生展露了一些趋势。因我更多地关注服务网格领域,在此就该方向谈谈我的观点,欢迎其他专家交流。一是 零信任的云原生安全备受关注。CNCF 在《云原生安全白皮书》中指出,“我们需要在应用安全生命周期中采用更自化和安全的架构设计(如零信任)”,这表明云原生安全越来越受重视。零信任安全意味着默认情况下,网络内外都不信任任何人,并且要对试图访问网络资源的每一个人进行验证。部署服务网格有助于缩小云原生部署的攻击面,并为构建零信任应用网络提供关键框架。二是 API 网关与服务网格融合...阅读全文

Postgres 10 开发者新特性

是我们可以对这一列进行修改(alter),Postgres就会将这一列识别为一个序列,这样操作会简化我们数据库中的日常操作。 正如我们预料到的那样,Postgres 10存在一些不向后兼容的改。对浮点时间戳的支持已经被抛弃了,对于低于版本8的 pg_dump也已经不再提供支持,有关复制(replication)和pg_basebackup工具的一些默认值也有所变化。版本编号由三部分改为了两部分,同时开发者的脚本不能直接运行,而是使用类似于server_version_num这种查询,它返回的是一致的的可排序的和可比较的(sortable and comparable)版本号。 查看英文原文:Postgres 10 Features for Developers,本文转载自InfoQ.com...阅读全文

博文 2017-12-30 11:46:16 debian.cn

ChaosMesh 的基本功能有哪些

。IOChaos:模拟具体某个应用的文件 I/O 故障,例如 I/O 延迟、读写失败。TimeChaos:模拟时间跳异常。KernelChaos:模拟内核故障,例如应用内存分配异常。平台类型故障:AWSChaos:模拟 AWS 平台故障,例如 AWS 节点重启。GCPChaos:模拟 GCP 平台故障,例如 GCP 节点重启。应用层故障:JVMChaos:模拟 JVM 应用故障,例如函数调用延迟。混沌实验场景​混沌实验场景由一组混沌实验和应用状态检查组成,旨在帮助用户在平台上实现混沌工程闭环。用户运行混沌场景,可以通过一系列的混沌实验,不断地扩大爆炸半径(包括攻击范围)和增加故障类型。运行混沌实验后,用户可以方便地检查当前的应用状态,判断是否需要进行后续混沌实验。同时用户可以不断地迭代混沌实验场景,积累...阅读全文

Debian 25 岁生日快乐!精彩仍在继续

而蓬勃发展的组织,拥有由志愿者组成的无数自组织团队。虽然它通常看起来很混乱,但该项目由两个主要的组织文件维持:Debian 社会契约(Debian Social Contract),用以提供改善社会的愿景,以及 Debian 自由软件指南(Debian Free Software Guidelines),它用于指示哪些软件是可以被使用的。项目章程和行为准则充当了重要的补充,章程(Constitution)规定了项目结构,行为准则(Code of Conduct)为项目内的互奠定了基调。 在这个特别的时刻,我们应该感谢 Debian 项目及其背后的所有人。如果你是 Linux 和开源的粉丝,今天也应该花一点时间来感谢 Debian,即便你不使用这款操作系统 —— 或基于它的发行版,因为...阅读全文

博文 2018-08-17 00:01:33 debian.cn

Metasploit Framework 5.0 发布 最流行的渗透测试框架

言,框架建立在不断增长的世界级攻击性内容库的框架基础上。另外,此次更新还包括了可用性改进和大规模开发的支持,数据库和自化 API 的改进等。 在 4.x 现有的 Postgresql 数据库后端之上,Metasploit 5.0 增加了将数据库本身作为 RESTful 服务运行的功能,使用该服务可以与多个 Metasploit 控制台甚至外部工具进行交互。5.0 版本的这个变更还将取消数据库服务的一些批量操作,从而通过并行处理数据库和常规 msfconsole 操作来提高性能。 新的发布周期 过去的一年,Metasploit 的开发包括两个分支:一个是 4.x 的稳定分支,支持 Metasploit Pro 和像 Kali Linux、ParrotSec Linux、和 Rapid7 自己...阅读全文

博文 2019-01-15 13:37:28 debian.cn

Facebook 开源的一组 Linux 内核组件与工具

将发生的资源短缺提供早期预警,从而实现更积极主、细致的响应。 Oomd:https://facebookmicrosites.github.io/oomd/ Oomd 是一个用户空间 OOM(内存不足)进程杀手,可以更好地了解系统上运行的进程的上下文和优先级。它允许配置对 OOM 条件的响应,例如暂停或终止非必需项、重新分配系统中的内存等操作。 详情信息请查看发布公告,以及对应项目的开源主页。...阅读全文

博文 2018-11-24 09:27:14 debian.cn

以太网技术联盟宣布800千兆以太网规格

近日,25千兆以太网联盟宣布更名为以太网技术联盟,并发布了800G以太网800GBASE-R规范,重用400G标准逻辑。 以太网技术联盟表示,“25千兆以太网联盟最初成立是为了开发25、50和100 Gbps以太网规格,现更名为以太网技术联盟,是为了更好反映对新技术的关注”。该行业联盟包括Arista、Broadcom、Cisco、Dell、Google、Mellanox和Microsoft。 更快的以太网将加快数据中心内部和数据中心之间的通信。该规范现在已经可用,并打算作为最终IEEE的正式标准工作的基础。以太网技术联盟(Ethernet Technology Consortium)正在重塑形象:该联盟成立于2014年,旨在推网络速度的下一个突破,当时它采用了一个现在看来有些过时的名称...阅读全文

博文 2020-04-12 15:10:55 debian.cn

提前尝鲜,从 Debian 10 升级到 Debian 11

(PPA)。你可以在升级后逐一启用它们。 关闭所有正在运行的应用。 停止任何你可能已经启用的运行中的服务。升级完成后,你可以通过 systemctl 启它们。这包括 Web 服务器、SSH 服务器、FTP 服务器或任何其他服务器。 确保你有稳定的互联网连接。 并为你的系统留出足够的停机时间。因为根据你的系统配置,Debian 版本升级需要时间大约在 1.5 小时到 2 小时之间。 将 Debian 10 Buster 升级到 11 Bullseye 确保你的系统是最新的,而且你的软件包列表是最新的。 sudo apt update && sudo apt upgrade 使用下面的命令安装 gcc-8-base 包。这是必须的,因为在历史上曾出现过升级失败的情况,这是因为下面的软件包中包含了某些...阅读全文

博文 2021-08-16 12:16:21 Debian升级

Debian 10.8 发布:包括多项安全更新和错误修复

/src:iproute2) | 修正JSON输出中的bug;修正在启时使用ip netns add时导致系统DOS的竞赛条件 | | [irssi-plugin-xmpp](https://packages.debian.org/src:irssi-plugin-xmpp) | 不要过早地触发irssi核心连接超时,从而固定STARTTLS连接 | | [libdatetime-timezone-perl](https://packages.debian.org/src:libdatetime-timezone-perl) | 新版tzdata的更新 | | [libdbd-csv-perl](https://packages.debian.org/src:libdbd-csv-perl) | 修正libdbi...阅读全文

博文 2021-02-07 10:57:22 joseph

HTML 5.1 — 14 项新增特性及使用案例

5.1 中被引入的新的功能特性和功能提升。你不需要 JavaScript 就可以利用上这些功能特性。并非所有的浏览器都支持这些功能特性,因此你最好是在将它们应用于生产环境之前先检查一下浏览器的支持情况。 14. 预防网络钓鱼攻击 大多数使用 target='_blank' 的开发者都不了解一个事实——最新打开的标签可以改变 window.opener.location 到一些钓鱼网页。它将会在已打开的网页,以你的名义执行一些恶意 JavaScript 代码。因为用户相信已经打开的网页,他们不会起疑心。 为了彻底解决这个问题,HTML5.1 已经标准化 rel=”noopener”的使用属性,与浏览器的上下文环境分开。rel=”noopener” 允许在 标签之间使用...阅读全文

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

协议介绍之深入了解 gRPC

及它的相关属性。在 HTTP/1.x 时代,我们采用纯文本协议,并且使用 \r\n 来分隔,如果我们要传输的元数据很多,就会导致 header 非常的庞大。另外,多数时候,在一条连接上面的多数请求,其实 header 差不了多少,譬如我们第一个请求可能 GET /a.txt,后面紧接着是 GET /b.txt,两个请求唯一的区别就是 URL path 不一样,但我们仍然要将其他所有的 fields 完全发一遍。 HTTP/2 为了结果这个问题,使用了 HPACK。虽然 HPACK 的 RFC 文档 看起来比较恐怖,但其实原理非常的简单易懂。 HPACK 提供了一个静态和态的 table,静态 table 定义了通用的 HTTP header fields,譬如 method,path 等...阅读全文

博文 2017-06-22 11:08:48 debian.cn

Debian的版本号及distributions

release的code name(名为code name的distribution)。每天一些叫做britney的scripts都会被运行,从sid中选出满足一定条件的packges更新到testing中。当release manager感觉合适的时候,testing被frozen,这意味这控制packages从unstable到testing的策略变紧了,too buggy的pacakges被移除,除bug fixes外其他改不允许进入testing。根据进度一段时间过后,testing更进一步被frozen。处理testing的细节被Release Team在debian-devel-announce上发布。当Release Team对当前问题的解决情况达到满意的程度后,testing就被...阅读全文

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

Debian Jessie、Stretch 下安装配置 PHP7.2

: systemctl restart php7.2-fpm 更多日常的操作: systemctl restart php7.2-fpm #重启 systemctl start php7.2-fpm #启 systemctl stop php7.2-fpm #关闭 systemctl status php7.2-fpm #检查状态 安装更多组件 上面的一条命令安装 PHP 只是安装了部分 PHP 拓展,更多的软件可见: root@debian.cn-service:~# apt-cache search php7.2 php-radius - radius client library for PHP php-http - PECL HTTP module for PHP Extended HTTP...阅读全文

博文 2017-12-16 14:16:25 debian.cn

Dubbo 2.7.0发布 分布式RPC服务框架

中心解耦,增加对 Apollo 等第三方专业配置中心的支持,更易于扩展新增应用级别的态配置规则规则体使用更易读、易用 YAML 格式外部化配置。支持读取托管在远程的集中式配置中心的 dubbo.properties,实现应用配置的集中式管控。更精炼的注册中心 URL,进一步减轻注册中心存储和同步压力,初步实现地址和配置的职责分离。新增服务元数据中心,负责存储包括服务静态化配置、服务定义(如方法签名)等数据,默认提供 Zookeeper, Redis 支持。此功能也是 OPS 实现服务测试、Mock 等治理能力的基础。异步编程模式增强(限定于 Dubbo 协议)原生 CompletableFuture 签名接口支持服务端异步支持异步 Filter 链新增 Protobuf 序列化协议扩展新增...阅读全文

博文 2019-01-18 09:43:16 debian.cn

Proxy-Go v6.6 发布啦

在 direct 里面的目标都走上级. --intelligent=intelligent,blocked 和 direct 里面都没有的目标, 智能判断是否使用上级访问目标. 特点: 链式代理, 程序本身可以作为一级代理, 如果设置了上级代理那么可以作为二级代理, 乃至 N 级代理. 通讯加密, 如果程序不是一级代理, 而且上级代理也是本程序, 那么可以加密和上级代理之间的通讯, 采用底层 tls 高强度加密, 安全无特征. 智能 HTTP,SOCKS5 代理, 会自判断访问的网站是否屏蔽, 如果被屏蔽那么就会使用上级代理 (前提是配置了上级代理) 访问网站; 如果访问的网站没有被屏蔽, 为了加速访问, 代理会直接访问网站, 不使用上级代理. 域名黑白名单,更加自由的控制网站的访问方式...阅读全文

博文 2018-12-01 09:52:14 Go v6.6 发布 新增智能模式

高性能缓存服务器 Nuster

-rule 200and404 code 200,404 cache-rule all code all if|unless condition 定义 ACL 条件 详见HAProxy configuration的7. Using ACLs and fetching samples 常见问题 如何调试? 在global添加debug, 或者带-d启haproxy 缓存相关的调试信息以[CACHE]开头 如何缓存 POST 请求? 添加option http-buffer-request 如果自定义了 key 的话需要使用body关键字 请求 body 可能不完整,详见HAProxy configuration 的 option http-buffer-request小节 另外可以为 post 请求...阅读全文

博文 2017-12-15 22:17:31 debian.cn

如何对一个deb包解压、修改、重新打包 全过程

/tmp/oo[/code] 第二种 [code="bash"]ar -vx xx.deb[/code] 这会解压出3个文件debian-binary,control.tar.gz,data.tar.gz 然后再[code="bash"] tar -xzvf data.tar.gz[/code]就可以了... 提取、修改、重建deb包 weixin_34273479的博客 06-24 190 提取、修改、重建deb包 以下皆以fglrx驱deb包为例,fglrx文件夹用来存放解包后的所有文件,fglrx_8.753-0ubuntu1_amd64.deb为需要修改的deb包 创建fglrx文件夹 $ mkdir fglrx 解包deb $dkpg-deb -x fglrx_8.753...阅读全文

博文 2021-02-16 11:44:48 CSDN

一位资深Java架构师的晋级心得

计原理,Spring事务处理机制,SpringMVC,Spring源码分析Mybatis:Mybatis体系结构,Mybatis核心应用与配置,Mybatis关联查询,与Spring集成,Mybatis源码分析 2. 工程化工具 Maven项目工具:Maven命令使用,Maven的pom配置体系,插件机制及插件开发,Nexus使用,上传,配置Git分布式版本控制:Git安装和理解仓库,工作常用命令,分支和Tag管理,代码冲突解决方案,Github开源社区,Git企业应用,与IDE集成Sonar代码检测:Sonar环境搭建和使用,使用Sonar进行代码质量管理,与IDE集成使用Jenkins:搭建Jenkins自化部署环境,集成git/maven/sonar工具,插件机制 3. 微服务架构...阅读全文

博文 2019-01-13 22:49:22 debian.cn

Linux 27周年:这27件有趣的事实你可能不知道

开发和发布时间表后,新版本的 Linux kernel 现在基本每隔 66 天左右发布一次。 18、Linux 不是 Linus Trovalds 唯一知名的作品,还有 Git 版本控制系统和潜水应用 SubSurface 。 19、据估计,90% 的好莱坞视觉效果在生产流程的某个阶段依赖于 Linux 。 20、根据 openhub.net 的统计数据,超过 95% 的 Linux 是用 C 语言编写的。 21、最新版本的 Linux kernel 可能有 13.3%的代码由空行组成。这并非毫无意义,空行是严谨的编码风格的一部分,使内核保持整洁、高效和有序。 22、基于 Linux 的 Android 是目前全球最成功的移操作系统。 23、Linux 的每个内核版本都有一个有趣的代号,比...阅读全文

如何校验 Debian 软件包的 MD5

你有没有想过为什么安装在你系统上的某个二进制文件或软件包没有按预期的那样来运行,或者说没有按正常的方式来运行,也许它根本就无法启。 考虑到这是维护系统上未损坏软件包的一个重要因素,因而对照存储在软件包中的信息,验证文件系统上的文件是个重要步骤,为此需要阅读本文。 推荐阅读:《学会如何在Linux下生成MD5校验和并使用它来校验文件?》 如何对照MD5校验和校验已安装的Debian软件包? 在Debian/Ubuntu系统上,你可以使用debsums工具来校验已安装软件包的MD5和。如果你想在安装之前知道关于debsums软件包的信息,可以使用APT-CACHE,就像这样: $ apt-cache search debsums 下一步,使用apt命令来安装它,如下所示: $ sudo...阅读全文

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

在树莓派上搭建 Raspbian 系统下的 Kubernetes 集群

"192.168.0.50 kmaster" | sudo tee -a /etc/hosts echo -e "192.168.0.51 knode1" | sudo tee -a /etc/hosts echo -e "192.168.0.52 knode2" | sudo tee -a /etc/hosts 部署主节点 在部署主节点前,我们默认你已经完成树莓派操作系统的安装,注意使用最新的 Raspbian,这个步骤可以参考网上的其他文章,这里不展开介绍。在主节点上,启 SSH 服务,将主机名设置为 kmaster,并调整 IP 地址为 192.168.0.50。 通过 ssh 连接主节点,并安装 k3s: local$ ssh pi@kmaster kmaster$ curl -sfL https...阅读全文

博文 2020-04-12 16:30:23 debian.cn

深入学习golang — channel

) { // Start handlers for i := 0; i < MaxOutstanding; i++ { go handle(clientRequests) } <-quit // Wait to be told to exit. } 开始就启固定数量的handle goroutine,每个goroutine都直接从channel中读取请求。这种写法比较简单,但是不知道有没有“惊群”问题?有待后续分析goroutine的实现。 5. 传递channel的channel channel作为go语言的一种原生类型,自然可以通过channel进行传递。通过channel传递channel,可以非常简单优美的解决一些实际中的问题。 在上一节中,我们主goroutine通过channel将请求传递给工作...阅读全文

博文 2021-01-25 12:39:17 博客园

Debian Live 项目的剧变

尽管围绕 Debian Live 项目发生了很多戏剧性事件,关于 Debian Live 项目结束的公告的影响力甚至小于该项目首次出现时的公告。主要开发者的离开是最显而易见的损失,而社区对他本人及其项目的态度是很令人困惑的,但是这个项目也许还是会以其它的形式继续下去。 所以 Debian 仍然会有更多的工具去创造启光盘和其他介质。尽管是用这样一种有遗憾的方式,项目创始人 Dabiel Baumann 和 Debian CD 团队以及安装检测团队之间出现的长期争论已经被「解决」了。 在 11 月 9 日, Baumann 发表了题为「 Debian Live 项目的突然结束」的一篇公告。在那篇短文中,他一一列举出了自从这个和他有关的项目被发起以来近 10 年间发生的不同的事件,这些事件可以...阅读全文

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

Gitlab CI 配置文件 .gitlab

: script: - test project services: - postgres - ruby test:mysql: script: - test project services: - mysql - ruby 你可以看到hidden keys被方便的用作模版。 Triggers Triggers 可用于强制使用API调用重建特定分支,tag或commits。在triggers文档中查看更多。 pages pages是一个特殊的job,用于将静态的内容上传到GitLab,可用于为您的网站提供服务。它有特殊的语法,因此必须满足以下两个要求: 任何静态内容必须放在public/目录下 artifacts必须定义在public/目录下 下面的这个例子是将所有文件从项目根目录移到public/目录...阅读全文

博文 2018-12-12 21:09:02 ci.yaml 详解(下)