InfraPub 为您找到相关结果 564

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

师之前,应当先成为Java工程师。熟练使用各种框架,并知道它们实现的原理。jvm虚拟机原理、调优,懂得jvm能让你写出性能更好的代;池技术,什么对象池,连接池,线程池……Java反射技术,写框架必备的技术,但是有严重的性能问题,替代方案java字节技术;nio,没什么好说的,值得注意的是"直接内存"的特点,使用场景;java多线程同步异步;java各种集合对象的实现原理,了这些可以让你在决问题时选择合适的数据结构,高效的决问题 成为Java架构师,需要掌握哪些技能呢? 1.框架源分析 设计模式:Singleton单例模式,Factory工厂模式,Proxy代理模式,Template模板模式,Prototype原型模式等Spring5:Spring提醒结构,IOC注入原理,AOP设...阅读全文

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

FFmpeg 3.4 发布,多媒体处理工具合集

FFmpeg 3.4 已发布。FFmpeg 是用于处理音频、视频、字幕和相关元数据的多媒体内容的库和工具的合集。 库版本列表: libavutil 55. 78.100, libavcodec 57.107.100, libavformat 57. 83.100, libavdevice 57. 10.100, libavfilter 6.107.100, libavresample 3.7.0, libswscale 4.8.100, libswresample 2.9.100, libpostproc 54.7.100. 新型视频滤波器,音频滤波器,复用器和器以及其他更新。 在 FFmpeg 3.4 中包含的新视频滤镜中,有 deflicker,doubleweave...阅读全文

博文 2018-01-03 08:52:45 debian.cn

六个开源软件开发的潜规则

正如体育界不成文的规定一样,这些规则基本上不会出现在官方文档和正式记录上。比如说,在棒球运动中,从比分领先时不要盗垒,到跑垒员跑了第一时也不要放弃四坏球保送。对于圈外人来讲,这些东西很难懂,甚至觉得没什么意义。但是对于那些想成为 MVP 的队员来说,这些都是理所当然的。 软件开发,特别是开源软件开发中,也有一套不成文的规定。和其它的团队运动一样,这些规定很大程度上决定了开源社区如何看待一名开发者,特别是新加入社区的开发者。 按部就班,循序渐进 在参与社区之前,比如开放源代或者其它什么的,你需要做一些基本工作。对于有眼界的开源贡献者,这意味这你需要理社区的目标,并学习应该从哪里起步。人人都想贡献源代,但是只有少量的人做过准备,并且乐意、同时也有能力完成这项艰苦卓绝的工作:测试补丁、复审...阅读全文

博文 2017-05-20 10:27:11 debian.cn

Go 泛型草案更新,明年8月Go 1.17引入

Go 团队近日在博客介绍了 Go 泛型的最新进展。 Go 团队表示他们一直在完善泛型的设计草案,并为此编写了一个类型检查器——可按照设计草案中的说明,析使用泛型的 Go 代并报告任何类型的错误。为了收集社区的反馈,他们还编写了示例代并在草案中提供。 根据收集的反馈和了的信息,Go 团队发布了更新后的泛型设计草案。 "The design is fully backward compatible with Go 1",完全兼容 Go 1 新版草案最大的变化是放弃了关于 contracts 的想法。因为团队认为 contracts 和 interface 类型之间的区别会令人感到困扰,所以他们正在消除这种区别。类型参数现在受 interface 类型约束,当 interface 类型仅...阅读全文

博文 2020-06-23 07:40:34 debian.cn

华为正式发布 openEuler 系商业发行版操作系统

3月27日,华为开发者大会2020以线上形式举行,华为云与计算BG总裁侯金龙在主题演讲中发布openEuler系商业发行版操作系统,首批参与的操作系统包括银河麒麟服务器操作系统V7.6,普华服务器操作系统V5.1(鲲鹏版)、深度欧拉V1.0以及傲徕服务器操作系统1.0。 IT之家此前报道过,今年1月份,openEuler开源社区(以下简称openEuler社区)正式开放源代、镜像及开发测试环境,标志着openEuler社区开放运作迈出了坚实一步。作为主要筹备方,华为会逐步开放在ICT基础软件领域的技术积累,将操作系统、编译器/JDK等领域的基础平台能力开源至openEuler社区。 在openEuler社区,社区参与者可下载操作系统安装镜像或源代,快速了并掌握openEuler操作系...阅读全文

博文 2020-03-27 11:10:15 debian.cn

谷歌开源了代码评审规范:好坏代码应这样来判断

评审者不需要的特性,那么即使代做了不错的设计,评审者也应该不予通过。 没有所谓的“完美”代,只有更好的代。评审人员不应要求作者在批准前对 CL 的每一小部分过分完美。相反,评审者应该权衡向前继续开发的需求和修改建议的重要性。评审者要求的是持续性地改进,而不是追求完美的代。CL 作为一个整体,如果它能提升系统的可维护性、可读性和可理性,那么就不要因为它还不完美而推迟数天或数周更新。 评审者应该经常留下一些评论,以表达能导致更好性能的做法。如果这些做法并不是非常重要的,那么需要加上前缀「Nit:」,从而令代作者知道这些内容是可以忽略的。 评审指导 代评审有一个很重要的功能,即教开发者一些开发经验,不论是语言、框架还是一般软件设计准则。留一些评论总会帮助开发者学习一些新的知识,共享知...阅读全文

博文 2019-09-10 17:19:13 debian.cn

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

本文大部分内容翻译总结自《Software Engineering at Google》 第10章节 Documentation。 另外,该书电子版近日已经可以免费下载了 https://abseil.io/resources/swe_at_google.2.pdf,有兴趣的同学可以下载翻阅下。 首先声明,本问所说的文档不仅限于纯文本文档,还包含代注释(注释也是一种特殊形式的文档)。 ## 文档的重要性 ## 高质量的文档对于一个组织或团队来说有非常多的益处,比如让代和API更容易理、错误更少;让团队成员更专注于目标;也可以让一些手工操作更容易;另外如果有新成员加入的话有文档也会让他们更快融入…… 写文档有比较严重的收益滞后性,不像测试,你跑一个测试case,它能立即告诉你是对还是错...阅读全文

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

在 Debian Stretch 上安装 FFmpeg

FFmpeg 是一款流行的多媒体框架,可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整决方案。它包含了非常先进的音频/视频编库libavcodec,为了保证高可移植性和编质量,libavcodec 里很多 codec 都是从头开发的。 还值得一提的是,ffmpeg 转换多媒体文件提供了 FFmpeg 工具,ffserver 流工具,基于 SDL 和 FFmpeg 库和 ffprobe 多媒体流分析仪 ffplay 媒体播放器。 最新的版本是ffmpeg 3.3.4 "Hilbert", 软件库的版本如下, libavutil 55. 58.100 libavcodec 57. 89.100...阅读全文

博文 2017-10-26 13:41:36 debian.cn

NeuVector:业内首个开源容器安全平台

2022年1月18日,全球企业级开源决方案领导者SUSE宣布:NeuVector代库现已在GitHub上向开源社区开放。将之前的专有技术全部开源是对SUSE开源文化的传承,也践行了SUSE向合作伙伴和客户提供开放、互操作性和创新的决方案的承诺。基于本次发布,NeuVector成为了业界首个端到端的开源容器安全平台,唯一为容器化工作负载提供企业级零信任安全的决方案。 三个月前,SUSE完成了对NeuVector的收购;此后,SUSE一直在考虑将这一云原生容器安全平台开源所涉及的技术和法律问题。NeuVector是业界领先的安全和合规决方案,已被全球知名企业广泛采用;其代库的开源不仅使NeuVector成为开源社区的首选技术,还为受严格监管的客户(包括政企、金融)提供了更可靠...阅读全文

基于Inception & Yearning做SQL审核的实践

/gnu/bison/bison-2.5.tar.bz2 压缩:tar xf bison-2.5.tar.bz2 进入目录:cd bison-2.5 检查并编译源:./configure && make && make install 其中编译问题用以下方式决编译问题:https://www.cnblogs.com/hjj801006/p/3988220.html 拷贝启动文件: cd /root/inception/debug/sql cp Inception gen_lex_hash /usr/local/bin/ 制作配置文件 cat /etc/inception/inc.cnf [inception] general_log=1 general_log_file=/var...阅读全文

博文 2018-08-13 17:39:45 debian.cn

提问的智慧(精简版)

用替换一幅图片的色(color table)成自己选定的色,我现在知道的唯一方法是编辑每个色区块(table slot), 但却无法从某绘图程序的颜色选择器取得十六进制的 RGB 值。问题决后,加个简短的补充说明补充说明不必很长或是很深入。简单的一句 你好,原来是网线出了问题!谢谢大家。 比什么也不说要来的好。事实上,除非结论真的很有技术含量,一句话就够了:说明问题是怎样决的,但大可不必将决问题的过程复述一遍。对于有深度的问题,张贴调试记录的摘要是有帮助的。但请记住,先描述问题的最终状态,说明是什么决了问题,在此之后才指明踩坑的地方。在即时聊天软件里问问题为了避免重复答疑,你应该在群里询问常见问题。由于部分聊天软件没有话题串的功能(或着实现很差),同时群里还可能有多个同时讨论的...阅读全文

博文 2023-10-07 15:02:42 infras

聊聊很重要的内核技术eBPF

在2018年的 Linux Plumber 大会上,eBPF成了亮点,有24个议题提到了 eBPF,可以预计eBPF会成为一大技术热点。 eBPF(Extended Berkeley Packet Filter) 的核心是驻留在 kernel 的高效虚拟机。最初的目的是高效网络过滤框架,前身是 BPF。 Linux kernel 3.18版本开始包含了eBPF,相对于 BPF 做了一些重要改进,首先是效率,这要归功于 JIB 编译 eBPF 代;其次是应用范围,从网络报文扩展到一般事件处理;最后不再使用socket,使用map进行高效的数据存储。 根据以上的改进,内核开发人员在不到两年半的事件,做出了包括网络监控、限速和系统监控。目前eBPF可以分为三个过程: 以字节的形式创建...阅读全文

博文 2020-08-16 11:08:44 debian.cn

Docker更名Moby,也是无奈之举

宣布推出“Moby项目”,将其旗下的Docker产品(包括DockerCE与Docker EE两款商用产品)从Docker开源项目当中剥离出来。同时,Moby也将成为面向特定基础设施创建定制化容器软件的重要起点。 在接受电话采访时,Docker公司市场营销与社区高级副总裁David Messina指出,DockerCon大会与会者已经得到了这一明确通告。 Messina表示,“Moby项目属于Docker项目的全新上游”,用户将可利用该开源代库克隆出自己需要的系统。 Messina同时承认此次更名在一定程度上可能引发误。他指出,“无论何时,开源世界中的重大改进总会引发混乱,但我们并不是有意要制造麻烦。” 尽管如此,该公司于两年前决定将其容器软件从基础设施组件(包括runc...阅读全文

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

Ubuntu 17.10新功能抢先看

距离Ubuntu 17.10发布还有2个月左右,在正式版发布之前,让我们来看看新版系统带来哪些新特性。 一、桌面环境 Ubuntu 17.10将把默认的Unity桌面换成Gnome桌面环境,最后一个beta系统里面将可看到最终release的Gnome桌面环境。 二、登陆管理器 17.10将把登陆管理器由LightDM换成GDM,当然,依然可以手动将默认的 GDM切换回LightDM ,但要注意兼容性。 三、显示服务器 新系统显示服务器将继续为Xorg session提供支持,同时Wayland将作为默认的显示服务器。 四、视频器支持 视频加速在新版本系统中将得到改善。默认支持GPU硬件加速,Intel GPU视频将重点得到支持,因为大部分PC里都使用Intel集成显卡。AMD...阅读全文

Git 免用户名密码访问代码库

在使用 git 时,如果不是使用ssh 和 key 验证的方式,则每次提交都会让输入用户名和密,会显得比较麻烦,在服务器上配置时也无法做到自动同步更新代。那么如何决这个问题呢?我们这里介绍除 ssh + key 以外的免密登录方式。在全局中存储用户的账号密 以 Windows 环境为例,在 %HOME% 目录中,一般为C:\Users\username(也可以是你自己创建的系统用户名目录)目录下,创建.git-credentials 文件。 文件内容为一行,样例如下: https://username:password@git.example.com 注:username对应的 git 服务器的用户名,password 为密。然后再进入 git bash 中执行, git...阅读全文

博文 2018-11-28 12:55:36 debian.cn

树莓派4发布:性能飙升 配件丰富 价格不变

,意味着树莓派 4 能够支持高动态范围(HDR)的 4K p60 HEVC 视频、并同时带动两台 4K 显示器。同时,这是消费者首次能够选择 1GB / 2GB / 4GB 运存,且起售价维持 35 美元(240 RMB)不变。 本次升级后,你可以将树莓派 4 当做一台完整的台式电脑来使用,因为官方提供了一整套的桌面配件。套件中包括了主板、机箱、USB 键鼠、电源、两根 HDMI 线、32GB Micro SD 存储卡、以及初学者指南,可帮助您充分发挥设备的潜力,价格为 105 英镑(919 RMB)。 显然,随着树莓派 4 带来的最新改进,树莓派基金会有望帮助人们决更多的问题。下面是树莓派 4 的详细规格: 处理器:博通 BCM2711,四核 Cortex-A72、64 位 SoC、主...阅读全文

博文 2019-06-25 08:43:29 debian.cn

Debian下编译安装Golang

我的Debian是用来工作的,因此用的是稳定源。稳定源的优点是,软件经过充分的测试,处于稳定版本。这种状态对于绝大多数软件,都是最合适的。 但是,对于一些需要最新版本的软件来说,稳定源太过于滞后。 官网不仅连接不稳定,二进制发布包也不够全。 目前(2016),Debian的稳定源只能安装go1.3版本。如果需要最新的版本,只能自行从源编译安装。 卸载旧版本 sudo apt-get remove golang sudo apt-get autoremove 源下载 git clone https://github.com/golang/go.git 如果没有Git,必须自行决;如果没有gcc,也需要自行安装。 此外,golang/go这个库实在太大,近200MB。完整从GitHub上...阅读全文

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

Linux 初学者教程:chfn 命令

以下是一些 Q&A 风格的示例,可以让您了 chfn 命令的实际工作原理。 问题1:如何使用chfn更改用户的全名? 可以使用-f命令行选项以下列方式完成此操作: sudo chfn -f HimanshuArora himanshu 请注意,'manshu'是Linux用户,其全名更改为'ManshuArora'。 问题2:如何使用chfn更改家庭电话号? 要更改家庭电话号,请使用 -h 命令行选项。 sudo chfn -h 0172-666666 himanshu 问题3:如何使用chfn更改用户的房间号? 这可以使用-r命令行选项来完成。 sudo chfn -r 12 himanshu 问题4:如何使用chfn更改用户的工作电话号? 要更改工作电话号,请使用-w命令行选...阅读全文

博文 2018-08-23 21:58:16 debian.cn

Django 3.0 发布第一个版本 开始支持异步功能

Django 3.0 发布了第一个版本3.0a1,正式版版本将于今年12月份发布。3.0版的Django带来了一些新特性,其中最值得关注的应当是其开始支持异步功能。 django路线图 此前有草案提出要 让 Django 支持异步 。聚集于 HTTP 中间件视图和 ORM,开发者要在 Django 中添加异步支持,同时维护对同步 Python 的支持,并且将完全向后兼容。 该设想最终会替换掉 Django 中的大多数阻塞部分,包括 Session、Auth、ORM 与 Handlers 等,使其 原生支持异步 。而同步 API 将继续存在并得到完全支持,其中一些最终将转变为原生异步代的同步包装器。 ASGI 模式将 Django 作为原生异步应用程序运行,原有的 WSGI 模式将围绕每个...阅读全文

博文 2019-09-13 07:21:28 debian.cn

为什么 Django 能持续统治 Python 开发世界

对于 Python 开发者来说,web 开发框架真可谓玲琅满目。然而 Django , 毋庸置疑的成为最受青睐的 web 框架。通过本篇博客,我来为大家讲下为什么相比 Flask、Pyramid、Tornado、Bottle、Diesel、Pecan、Falcon 这些流行的 Python web 框架,Python 开发者更倾向于选择 Django。 再大肆宣扬Django之前,让我们简单了一下web框架 Web框架是一个代库,使开发人员更容易构建动态网站、Web应用程序和Web服务。 众所周知的是,每个网站都有一些通用的功能(如处理会话,数据验证等等),一些您每次创建网站时都需要编写的功能。 这使开发任务平淡乏味。 然而,使用Web框架可以让您每次创建网站都需要重新编写通用功能代...阅读全文

博文 2017-07-21 14:15:11 debian.cn

7大维度看国外企业为啥选择gRPC打造高性能微服务

务间通信会花费大量时间,从后勤和财务角度看这很不切实际。花时间从一开始就考虑正确的框架,可以省去很多未来的浪费。 我们花了大量的时间来制定评估标准和研究、选择。Bugsnag到底长什么样子呢? 技术标准 在研究可用选项时,使用了一些特定的标准来评估。要考虑的事情是基于微服务架构的最有效的方法。主要目标是自由地使用通信,消除通信的复杂性,了每项服务的责任所在。其中的一些技术问题是: 速度 - 对于大量的请求/响应API调用,需要将调用本身的延迟作为性能和用户响应速度的最小因素。延迟的主要组成部分是连接成本,传输成本和消息编/时间。 基础架构兼容性 - 框架在基础架构中扮演的角色如何?主要是关于负载平衡和自动扩展?我们使用托管在Google云端平台上的Kubernetes服务,因此需要框...阅读全文

博文 2018-03-19 17:51:32 debian.cn

运维的未来:云服务兴起,运维人员会“下岗”吗?

,就因为dev团队正在推出的破烂玩应,他们大半夜的得被叫起来。这种思维方式基本上已经过时了,正是思维方式使得人们都觉得干运维这一行的都是深深厌恶自己,一根接一根不停抽烟。这是由于缺乏同理心而产生的避重就轻、刻薄的想法。如果凌晨两点出现内存不足的异常,要不要去警告那些没有远见或者能力的运维人员去决这个问题呢?还是说我们应该警告那些对系统相当熟悉的开发者呢?后一种做法似乎是明显的,但是关键在于他们需要被授权获悉状况,调试后自动决。 其实新运维模式本质上应该把运维看作是一个产品团队,其产品就是基础设施。就像开发者把 API 作为他们提供的服务,运维把 API 以工具、UI、自动化、基础设施即代、可观察性和警戒的形式作为他们提供的基础设施。 @perterbourgon 关于这个话题,我有很多想...阅读全文

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

Go1.16 新特性:一文快速上手 Go embed

在以前,很多从其他语言转过来 Go 语言的同学会问到,或是踩到一个坑。就是以为 Go 语言所打包的二进制文件中会包含配置文件的联同编译和打包。 结果往往一把二进制文件挪来挪去,就无法把应用程序运行起来了。因为无法读取到静态文件的资源。 无法将静态资源编译打包进二进制文件的话,通常会有两种决方法: 第一种是识别这类静态资源,是否需要跟着程序走。第二种就是考虑将其打包进二进制文件中。 第二种情况的话,Go 以前是不支持的,大家就会去借助各种花式的开源库,例如:go-bindata/go-bindata 来实现。 但从在 Go1.16 起,Go 语言自身正式支持了该项特性,今天我们将通过这篇文章快速了和学习这项特性。 基本使用 演示代: import _ "embed...阅读全文

博文 2021-02-17 08:44:12 CSDN

DevOps 越来越流行,2019 年这八大趋势值得关注

来看,DevOps 的采用率从 2015 年到 2016 年增加了约 8%,预计这一数字将在 2019 年大幅增长。 根据 Statista 的报告,很多商业组织正在采用 DevOps,2018 年增长率高达 17%,而 2017 年则为 10%左右。 你可以在 RightScale 上查看完整的报告。Forrester 的报告中也明确提到了 2018 年将是 DevOps 年。我们看到了将影响来年 DevOps 发展的八个事实。 焦点从 CI 管道转到 DevOps 装配线 管道为应用程序提供了从源控制到生产环境的一套完整的可视化视图。你可以在某个地方看到所有的内容。现在不仅要做 CI(持续集成),还要做 CD(持续交付)。企业正投入时间和精力,以便更多地了如何自动化完整的软件开发过程...阅读全文

博文 2018-12-10 22:49:57 debian.cn

字节跳动开源微服务中间件 CloudWeGo - OSCHINA

发语言。早在 2016 年,基础架构团队就已经开始基于 Golang 开发内部框架 Kite,并在 2019 年围绕性能和可扩展启动重构,使其能更好地满足业务发展和技术体系演进需求。 2020 年 10 月,Kitex 正式上线。虽然是一个全新的框架,但经过一年的线上应用,目前字节跳动内部已有超过 50% 的 Golang 微服务迁移到了 Kitex。 下面是 Kitex 的一些特性: 高性能:Kitex 默认集成自研网络库 Netpoll 作为网络传输模块,性能相较使用 go net 有显著优势;除了网络库带来的性能收益,Kitex 对 Thrift 编也做了优化,这在之前的性能优化实践文章中有介绍。关于性能数据,可参考 https://github.com/cloudwego...阅读全文

博文 2021-09-09 13:56:42 中文开源技术交流社区

Linux 内核将停止支持旧CPU架构 可减50万行代码

4.17 内核将删除 blackfin,cris,frv,m32r,metag,mn10300,score 和 tile(包括关联的设备驱动程序)的整个架构代。我一直与每个维护人员一起工作,以确保我的释是正确的,许多人都对在各支持这些 CPU 架构开展的工作留下了美好的回忆,但也认为在没有任何用户的情况下保持这些 CPU 架构活力毫无意义。” 在即将发布的版本中放弃对旧 CPU 架构的支持,会减小内核的大小,并且如果存在任何潜在的错误,它还可以减少内核中的攻击媒介的数量。...阅读全文

博文 2018-04-10 10:29:09 debian.cn

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

simsun.ttc放在这个目录 cp simsun.ttc /home/your_username/.wine/drive_c/windows/Fonts/ 有其他文章建议把simfang.ttf simkai.ttf timesbd.ttf timesi.ttf simhei.ttf simsun.ttc timesbi.ttf times.ttf这几个字体都放进这目录,或者更多字体。 这样wine安装程序时应该能够看清楚中文了,但wine安装的程序还会出现中文方块。因此还要修改注册表。先写注册表字体修改文件font.reg如下(引用了文章wine中文乱决方法一个比较直接的办法): REGEDIT4 [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT...阅读全文

三个简单而优秀的 Linux 网络监视器

有一个网络接口,可以不带选项运行 iftop。iftop 需要 root 权限: $ sudo iftop 当你有多个接口时,指定要监控的接口: sudo iftop -i wlan0 就像 top 一样,你可以在运行时更改显示选项。 h 切换帮助屏幕。 n 切换名称析。 s 切换源主机显示,d 切换目标主机。 s 切换端口号。 N 切换端口析。要全看到端口号,请关闭析。 t 切换文本界面。默认显示需要 ncurses。我认为文本显示更易于阅读和更好的组织(图1)。 p 暂停显示。 q 退出程序。 图 1:文本显示是可读的和可组织的。 当你切换显示选项时,iftop 会继续测量所有流量。你还可以选择要监控的单个主机。你需要主机的 IP 地址和网络掩。我很好奇 Pandora 在我那可...阅读全文

博文 2017-11-07 00:07:38 debian.cn

成功运作一个开源项目的15个要点

少。 2、透明 这一点很容易理:我们要使得社区可以观察和了你正在做的事情:使用易于查找的可公开访问的源代存储库,使用面向公众的问题跟踪软件,在社区可以找到的地方公布发布计划,以及在公共论坛捕获会议记录(例如归档邮件列表)。 3、开放 对于很多开源项目来说,“透明度”和“开放性”意味着同一件事,但其实这两个术语的含义截然不同。开放不仅仅指的是“一目了然”(这与透明本质上是一样的)。对于许多人来说,开源的“开放”意味着开放新思想,或开放参与。参与开源项目的规则对于每个人应该是一样的(“公平的竞争环境”):仅仅接受几个补丁是不够的,你必须对新的思路点子开放。总之,你必须允许别人参与你的项目,放弃对项目的绝对控制。 4、保持“公平的竞争环境” 这并不一定意味着你必须让任何人加入项目,而是要确保...阅读全文

博文 2017-11-08 09:58:28 debian.cn

开源软件对于商业机构的6大好处

可以及时地发现问题并决问题。 开源除了源代开放外,开发的过程也是透明的,因此,你可以检查供应商是否遵循 ISO27001,云安全原则等基准行业标准开发流程。 4、更多的用户导向 开源能使顾客和用户直接看到并参与到产品开发中来,这比闭源软件开发更能了客户的需求。供应商可能只关注产品的某一特定方面,而一个社区能致力于开发出更多的功能,能创造出对用户更有价值的产品。 5、更好的支持 专有供应商是在产品遇到问题时,唯一可以给你提供帮助的一方。如果他们无法提供你所需要的服务,或者需要对额外的服务收费,那事情就麻烦了。而软件一旦开源,如果供应商无法提供相应的服务或支持,可以有其他人来填补空白,这就是自由市场的优势,能保证你得到最好的服务。 6、更有利的许可 典型的软件许可充斥这一些不公平条例,它通...阅读全文

博文 2017-11-15 23:41:11 debian.cn

Linux基金会推出ACT项目 帮助开发者遵守开源许可证

Linux Foundation 正致力于通过组建新项目来改善开源的合规性,他们近日推出了一个 Automated Compliance Tooling(ACT)项目,旨在整合对推进开源合规性工具的投入,提高互操作性和可用性,从而帮助组织管理合规性义务。 根据 Linux 基金会的说法,虽然开源代的使用变得越来越流行,但使用开源代有责任遵守该代许可的条款,这会给用户和组织的管理带来挑战。 Linux 基金会战略高级主管 Kate Stewart 表示:“推进开源合规性的工具或项目有很多,但大多没有资金,构建强大可用性或高级功能的范围有限。我们从许多组织那里听说,目前存在的工具无法满足当前的需求。在 Linux 基金会下成立一个中立机构来处理这些问题,将使我们能够增加对合规工具开发社区...阅读全文

博文 2018-12-09 13:32:56 debian.cn

王垠:如何掌握所有的程序语言

基本特性写出好的代,那你换成另外一种语言也无济于事。你会写出一样差的代。我经常看到有些人 Java 代写得相当乱,相当糟糕,却骂 Java 不好,雄心勃勃要换用 Go 语言。这些人没有明白,是否能写出好的代在于人,而不在于语言。如果你的心中没有清晰简单的思维模型,你用任何语言表述出来都是一堆乱麻。如果你 Java 代写得很糟糕,那么你写 Go 语言代也会一样糟糕,甚至更差。 很多初学者不了,一个高明的程序员如果开始用一种新的程序语言,他往往不是去看这个语言的大部头手册或者书籍,而是先有一个需要决的问题。手头有了问题,他可以用两分钟浏览一下这语言的手册,看看这语言大概长什么样。然后,他直接拿起一段例子代来开始修改捣鼓,想法把这代改成自己正想决的问题。在这个简短的过程中,他...阅读全文

博文 2017-07-10 10:13:17 debian.cn

gRPC 1.23.0 发布,Google高性能 RPC 框架

<> (#19569)csharp 在 UTF8 编/期间删除 byte[] 分配 (#19511)csharp:删除 AuthContext 的 Lazy 用法 (#19533)csharp 避免 HandleNewServerRpc=>HandleCallAsync 中的 capture-context (#19526)确保 Grpc 元数据包包含 Grpc.Core.targets (#19449) Objective-C ObjC 实验支持 Bazel 构建 (#19621)实现全局拦截器 (#19322) PHP PHP:修复 channel::constructor() 中缺少的 addref (#19737) Python 在迭代之前检查 call.trailing_metadata...阅读全文

博文 2019-08-18 18:31:20 debian.cn

WebAssembly:无需容器的 Docker (下)

在 Docker + Wasm 背景下的 Wasm container 有什么好处以及如何运行一个服务 WordPress 的 php.wasm 镜像。动手示例让我们开始吧! 在动手示例中,我们将使用编译为 Wasm 的 PHP 释器。 我们会:构建一个 Wasm 容器。比较 Wasm 和原生二进制文件。比较传统容器和 Wasm 容器。展示 Wasm 的可移植性前期准备如果想在本地重现这些示例,你需要使用以下部分或全部内容来准备你的环境:WASI SDK - 从构建 C 代构建 WebAssembly 应用程序PHP - 为了比较而运行本机 PHP 二进制文件WasmEdge Runtime - 运行 WebAssembly 应用程序Docker Desktop + Wasm (本文写...阅读全文

博文 2023-01-03 06:39:46 spider

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

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

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

Zstd 显著提升 Linux 内核压缩效率,有望合并进5.9主线

缩率,Zstd 的压缩率要比内核使用的 Gzip 低,但比 XZ 和 LZMA 高。不过 Zstd 是除了 LZ4 之外,压速度最快的算法。 根据目前的情况来看,内核对 Zstd 的支持有望在下一个版本中(Linux Kernel 5.9)实现。一旦 Zstd 进入内核主线,Nick 的后续计划是放弃对 BZ2 和 LZMA(1) 的支持。这将有助于清理更多的内核代,因为 Bzip2 和 LZMA 目前并没有在内核树之外的其他地方使用。...阅读全文

博文 2020-07-28 19:02:02 debian.cn

CentOS 7.4 发布 安全稳定的 Linux 发行版

CentOS 7.4 发布了。CentOS 是 RHEL(Red Hat Enterprise Linux)源代再编译的产物,而且在 RHEL 的基础上修正了不少已知的 Bug ,相对于其他 Linux 发行版,其稳定性值得信赖。 自从版本1503(abrt> = 2.1.11-19.el7.centos.0.1)以来,CentOS-7 可以直接向 bugs.centos.org 报告错误。关于该特性可以从这个页面了更多。 带来各种新软件包其中包括:python-gssapi,python-netifaces,mod_auth_openidc,pidgin 和 Qt5。 SSH1 支持已从 SSH 服务器中删除。所有被认为是不安全的加密协议和算法已被废弃。了更多可以看 这里and 这...阅读全文

博文 2017-09-16 13:54:07 debian.cn

华为的 Linux 发行版 openEuler 可以使用了!

。 它是为 ARM64 架构的服务器量身定做的,同时华为声称已经做了一些改变来提高其性能。你可以在华为开发博客上了更多。 目前,根据 openEuler 的官方声明,有 50 多名贡献者为 openEuler 贡献了近 600 个提交。 贡献者们使源代对社区可用成为可能。 值得注意的是,存储库还包括两个与之相关的新项目(或子项目),iSulad 和 A-Tune。 A-Tune 是一个基于 AI 的操作系统调优软件,iSulad 是一个轻量级的容器运行时守护进程,如在 Gitee 中提到的那样,它是为物联网和云基础设施设计的。 另外,官方的公告提到,这些系统是在华为云上通过脚本自动构建的。这确实十分有趣。 下载 openEuler 到目前为止,你找不到它的英文文档,所以你必须等待或选择通过...阅读全文

博文 2020-01-27 11:08:00 debian.cn

Debian 9.13 发布,Stretch的最后一个计划更新

Debian 9.13 已发布,这也是 Debian 9 的最后一个版本,因为安全和发布团队计划不再进行更新。官方鼓励用户升级到 Debian 10。 Debian 9.13 包含多个安全修复以及决了部分“严重问题”。这些变更主要包括: 提供新版本的 ClamAV 以修复安全问题针对 CUPS 打印服务器的堆缓冲区溢出修复针对 D-Bus 的 DOS 问题修复针对 File-Roller 的安全修复对英特尔 Skylake 微代文件进行降级以决部分 CPU 在启动时的挂起问题针对 libvncserver 的堆溢出修复针对安全问题对 NVIDIA 驱动进行更新其他针对一般错误和安全问题的修复 详情查看 https://www.debian.org/News/2020/20200718...阅读全文

博文 2020-07-19 19:54:48 debian.cn

Linux Kernel 5.10.8发布:解决Btrfs性能倒退问题

Linux Kernel 5.10 LTS 的第八个维护版本更新于今天正式发布,本次更新最值得关注的改进就是终于决了 5.10 Btrfs 性能倒退的问题。在去年圣诞节的时候,Linux 5.10 就被反馈 Btrfs 出现了明显的性能倒退问题。例如简单压一个 Linux 内核源.tar.zst 文件,可能需要花费数倍的时间。 虽然修复 Btrfs 性能倒退的补丁在去年年底就已经推出,但直到今天才整合到 mainline 上。而且,在即将到来的 Linux 5.11 上还将会对 Btrfs 进行大量的改进。 总体来说,Linux 5.10.8 的情况应该不错。Btrfs 开发者 Josef Bacik 在该页面上评论道:“5.10+patch比普通的5.9快了很多,因为我的系列补丁更...阅读全文

博文 2021-01-18 08:00:03 debian.cn

技术部门的 SEO 规范

为客户提供SEO顾问服务的时候,经常遇到一些作为外部顾问不方便全程参与的情况。比如有的公司要新建网站,或者现有网站推到重来,问我能否从一开始就参与,提供SEO建议。 网站规划设计阶段就考虑SEO当然是好事,但作为一个远在异国的顾问,参与到这种需要大量深度讨论、沟通、协调的过程中,实在是不好操作,内部SEO人员更适合这种工作。 有的客户公司规模比较大,技术开发、内容、SEO等各部门是分开的,SEO部门的很多需求是要提交给技术、运营等部门实施的。反过来,其它部门的需求也由技术部门实施,但可就不一定经过SEO部门同意了。这个过程中就可能产生对SEO的不良影响。 也有的公司人员流动频繁,即使原先的开发人员都经过SEO培训,也还是会有完全不了SEO的新人加入团队。 这些情况都需要有一个技术部门必须...阅读全文

博文 2019-03-28 13:58:51 debian.cn

Angular 6.0 即将发布 承诺更小更快更易用

本月早些时候,Angular 团队发布了 6.0 的第五版候选版本 ,其中包括一些错误修复以及添加令牌标记和支持配置导航网址。 根据 Angular 的开发者支持者 Stephen Fluin 的说法,RC 意味着团队已经在一定程度上实现了正式版的稳定性,并且已经完成了添加功能和更改 API。 Fluin 还释说,该团队有两个发布曲目。 首先,他们向公众发布了新闻稿,其中包括团队对 Angular 所做的每一项变更,并将其合并到主分支中。 第二个是谷歌将所有的 Angular 源代放在一个存储库中,这意味着 Angular 的每一个变化都已经在谷歌的超过 500 种产品中使用。 6.0 版本的关键功能是将所有版本的框架结合起来,这意味着核心路由器,平台浏览器,CLI,Angular...阅读全文

博文 2018-04-24 09:41:33 debian.cn

谷歌开源 Pigweed:用于提升嵌入式开发效率

中的经典挑战是减少从运行 git clone 到在设备上执行二进制文件的时间。对于生产嵌入式项目,往往通常需要一整套工具。而 Pigweed 能够通过虚拟环境提供简化设置的工具,具体来说,Pigweed 的 pw_env_setup 模块中的引导脚本可设置当前的 shell 以访问一组标准化工具——包括 Python 3.8、clang 格式以及 ARM 编译器。所有这些都是在虚拟环境中完成的,因此无需修改系统的默认环境。 在典型的嵌入式开发中,即使添加很小的更改也需要一些额外的手动步骤。而 Pigweed 的 pw_watch 模块直接决了这种效率低下的问题,它提供了一个监视者(watcher),该监视者可以在保存文件时自动调用构建,还可以运行受代更改影响的特定测试。这大大缩短了更改的...阅读全文

博文 2020-03-22 08:35:14 debian.cn

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

去年7月,Go 语言官博就曾透露 Go 2 开发计划,并表示 Go 2 的目标就是决 Go 1.x 在规模化方面做的还不够好的地方。随着时间的推进,开发团队已着手准备 2.0 版本的开发工作,并公布了设计草案,供社区讨论和反馈,以促进最终的语言设计。 设计草案包含三个方面,错误处理、错误值和泛型,并针对各个方面进行了详细的概述和改进草案。大致总结如下: 一、错误处理(Error handling) 为扩展至大型代库,Go 程序必须是轻量级的,不会过度重复,且具备稳健性,能够优雅地处理出现的错误。 目前 Go 检查错误的代太多,但处理这些错误的代却严重不足。对于 Go 2,开发团队希望错误检查更加轻量级,减少用于错误检查的 Go 程序的文本量。此外,还能更加方便地编写错误处理程序,提...阅读全文

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

Kubernetes源码探疑:Pod IP泄露排查及解决方法

UK8S是UCloud推出的Kubernetes容器云产品,完全兼容原生API,为用户提供一站式云上Kubernetes服务。我们团队自研了CNI(Container Network Interface)网络插件,深度集成VPC,使UK8S容器应用拥有与云主机间等同的网络性能(目前最高可达10Gb/s, 100万pps),并打通容器和物理云/托管云的网络。过程中,我们决了开源kubelet创建多余Sandbox容器导致Pod IP莫名消失的问题,确保CNI插件正常运行,并准备将修复后的kubelet源提交给社区。 深度集成VPC的网络方案 按照我们的设想,开发者可以在UK8S上部署、管理、扩展容器化应用,无需关心Kubernetes集群自身的搭建及维护等运维类工作。UK8S完全兼容原生...阅读全文

Proxmox VE 6.1/6.2 U盘安装教程

Proxmox VE 是基于QEMU/KVM和LXC的开放源服务器虚拟化管理决方案。可以使用集成的、易于使用的Web接口或CLI管理虚拟机、容器、集群、存储和网络,PVE有方便易用的WEB界面,用户可通过网页的方式来管理服务器上使用 kvm 以及 lxc 技术运行的虚拟机。同时提供了一些先进功能的支持,如集群、HA等。PVE虽然是开源,却是由一个商业公司在运营、更新以及维护。 一、启动盘准备 1、下载U盘写盘软件 官方网站:https://rufus.ie/(目前比较好用的写盘软件,WIN10也是用着装) 2、下载PVE ISO文件 官方下载:https://www.proxmox.com/en/downloads(速度比较慢) 3、写入PVE,比较简单,基本跟win安装盘一样,选项基...阅读全文

博文 2021-02-15 08:36:49 星哥的博客

Linux基金会宣布开放物联网ACRN管理程序

Linux基金会发布了其中一个开源项目ACRN的详细信息,这是一个专为物联网和嵌入式设备设计的管理程序。该项目得益于英特尔代和工程的贡献,其目标是创建一个灵活小巧的虚拟机管理系统。通过基于Linux的服务操作系统,ACRN可以同时运行多个客户操作系统,使其成为许多场景的理想选。 Linux基金会表示,管理程序和设备模型是以“安全关键型工作负载”为基础构建的,并且设想ACRN将一些IoT工作负载整合到一个平台上。虽然该项目是作为强大而灵活的决方案提供的,但嵌入式开发人员社区被邀请提供代以进一步扩展和改进ACRN。 通过项目ACRN,嵌入式开发人员可以立即使用新的管理程序选项。 ACRN针对资源受限设备进行了优化,并将重点放在隔离安全关键型工作负载并给予他们优先考虑,使项目适用于许多物联...阅读全文

博文 2018-03-20 08:33:38 debian.cn

Facebook 正式发布 JavaScript 包管理器 Yarn 1.0

Workspaces) 越来越多的科技公司开始采用单体仓库模式(mono-repository — 方便跨项目共享代,同时避免依赖同步问题)来进行代控制,这种模式也正逐渐被开源社区和一些小型公司所采纳。 因此,Yarn 增加了一个新特性 ——工作区。工作区可以自动从多个 package.json 中收集所有的依赖项,并一次性将它们安装完毕。项目根目录下会生成一个独立的 yarn.lock 来锁定这些文件。此外,如果多个工作区之间存在依赖,Yarn 会为它们创建链接,这样所有的项目就可以始终共享最新的代。 自动合并 yarn.lock 文件 (Auto-merging of lockfiles) 多个开发者在开发同一个项目时,可能会需要更新包依赖,从而导致 yarn.lock 文件出现冲突。如果只有一两个...阅读全文

博文 2017-09-19 14:43:15 debian.cn

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

近日,Facebook 开源了一套决重要计算集群管理问题的 Linux 内核组件和相关工具,这些项目覆盖了资源控制、资源利用、工作负载隔离、负载均衡、测量和监控等方面:BPF、Btrfs、Netconsd、Cgroup2、PSI、Oomd。 Facebook 表示这些项目现在已大规模用于其所有基础设施生产环境中,并用于其它许多企业组织的环境中。 BPF:https://facebookmicrosites.github.io/bpf/ BPF 是 Linux 内核中一种高度灵活、高效率的代执行引擎,可以让字节在各个 hook 点运行,以使用自定义代。虽然 BPF 已广泛用于数据包过滤,但是 BPF 的指令集具有很强的通用性和灵活性,足以支持和允许除网络之外的众多使用场合,比如跟踪和...阅读全文

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

国产 Java 开源博客 Solo 2.5.0 发布,支持数据导出

Solo 是一款 一个命令 就能搭建好的 Java 开源博客系统,如果你想开个独立博客,请一定不要错过!2.5.0 版本主要支持了 Markdown/JSON 格式数据导出,并改进了 Markdown 渲染。 另外,我们 新的博客产品 Pipe(golang 开发)已经开源 ,欢迎大家来围观! 安装 下载 安装包 压后执行 java -cp WEB-INF/lib/*;WEB-INF/classes org.b3log.solo.Starter 从 2.4.0 升级只需将已有的配置拷贝覆盖即可,启动后会自动升级。 文档 用户指南 :安装、配置、备份以及常见问题 开发指南 :开发环境、项目结构、框架说明 皮肤开发 :开发步骤、模版变量 插件开发 :插件机制、处理流程 项目...阅读全文

博文 2017-12-21 09:48:36 debian.cn