InfraPub 为您找到相关结果 371

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

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

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

Go 1.16 即将发布,这些变更你需要知道

slice 的扩容条件是 len,在最新的代中,已经改为了以 cap 属性作为基准: // src/runtime/slice.go if cap > doublecap { newcap = cap } else { // 这是以前的代:if old.len < 1024 { // 下面是 Go1.16rc1 的代 if old.cap < 1024 { newcap = doublecap } 以官方的 test case 为例: func main() { const N = 1024 var a [N]int x := cap(append(a[:N-1:N], 9, 9)) y := cap(append(a[:N:N], 9)) println(cap(x), cap(y...阅读全文

博文 2021-02-17 08:52:12 CSDN博客

Apache Superset 成为 ASF 顶级项目

Apache 软件基金会宣布 Apache Superset 成为顶级项目 (Top-Level Project, TLP)。 Apache Superset 是一款现代化的开源数据工具,用于数据探索和数据可视化。它提供了简单易用的无代可视化构建器和声称是最先进的 SQL 编辑器,用户可以使用这些工具快速地构建数据仪表盘。 Apache Superset 将 SQL IDE、数据浏览工具、拖拽式仪表板编辑器和插件组合使用,以构建自定义的可视化效果,支持从许多关系数据库和非关系数据库中创建仪表板,这些数据库包括 SQLite、MySQL,以及 ClickHouse、Google BigQuery、Snowflake、Oracle 数据库、IBM DB2 和其他各种兼容的数据源,并且可以连接...阅读全文

博文 2021-01-25 10:35:13 debian.cn

Linux: Debian 9 Stretch可能将不支持Secure Boot

Debian 团队宣布 Debian 9 Stretch 在发布时将不太可能会支持 Secure Boot。Debian 9 的代在今年 2 月冻结,之后开发者的精力转向解决 bug 等问题上。 UEFI Secure Boot 是微软在 Designed for Windows 8 认证时要求 OEM 的产品必须支持,它的设计目的是防止恶意程序潜入到引导进程,用户如果想要在机器上安装替代操作系统,那么该操作系统需要获得微软的有效签名。Debian 团队称,shim 得到了微软签名,但 dak 没有。 开发者表示,虽然 Stretch 在发布时可能不会支持 Secure Boot,但在 Stretch 生命周期内引入 Secure Boot 支持仍然是可能的。...阅读全文

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

PostgreSQL 10 正式版发布,显著的性能提升

从 5 月份发布的 PostgreSQL 10 首个 Beta 测试版到今天已有小半年时间,今天 PostgreSQL 终于宣布了 PostgreSQL 10 正式版。 全新的 PostgreSQL 10 正式版值得关注的新特性包括: 使用基于发布和订阅机制的逻辑复制 声明式的表分区 提升了查询的并发性 显著的性能提升 更强的基于 SCRAM-SHA-256 密认证机制 提升了监控和控制功能 详细的 PostgreSQL 10 新特性描述请看 这里 。 官方发行说明请看 https://www.postgresql.org/docs/10/static/release-10.html?x=1 。 同时这里有一份 PDF 文档 通过实例详细介绍 PG 10 的新特性。...阅读全文

博文 2017-10-09 10:15:08 debian.cn

Pardus 17.1 发布,基于 Debian 的发行版

此次更新内容:新版本提供了三个不同名称的独立 ISO 映像表明意图 — Xfce,DDE(Deepin 桌面环境)和服务器。 发行说明仅以土耳其语提供,但在临时的 Pardus 版本中,在线翻译服务翻译了更改日志: 下载目录的默认名称已从“下载”更改为“İndirilenler”; 系统设置菜单已改进; 默认打印机测试页面已重新设计; 预先定义的“pardus”用户的密在开启直播系统时被移除; gdebi 程序运行图形界面时发生的崩溃是固定的; gnome-disks 程序某些部分的 bug 已经修复; 新增桌面壁纸; 许多软件包已经更新; 主题已经刷新; 深度桌面媒体支持添加; 许多安全和系统性能补丁已被添加 完整内容请查看 发布主页 。 下载地址:http...阅读全文

Python 2.7将于2020年1月1日终止支持

Python 语言作者 Guido van Rossum 在开发者邮件列表上宣布 Python 2.7 将于 2020 年 1 月 1 日终止支持。他说,别玩语义游戏了,Python 2.7 的终止支持时间不会再更改,之后不会再有安全更新。想要在这个日期之后继续支持 Python 2.7 的人将需要付费给商业供应商。 Python 是一个开源项目,他欢迎创建分支,他表示 Python 核心团队在这上面工作的时间够长了。 Python 2.7 原计划在 2015 年终止支持,但由于大量现有代没有移植到 Python 3 开发者将终止支持的时间推迟到了 2020 年。...阅读全文

博文 2018-03-14 16:58:09 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

LMDE 4 Debbie 正式版发布

LMDE 4 “Debbie” 正式发布了,LMDE 即 “Linux Mint Debian Edition”。它的目标是与 Linux Mint 尽可能相似,但不使用 Ubuntu,软件包库由 Debian 提供。 新版本主要带来了以下新特性: 支持 LVM 和全盘加密的自动分区主目录加密支持自动安装 NVIDIA 驱动程序支持 NVMe支持 SecureBoot支持 Btrfs 子卷改进安装程序自动安装微包在 Virtualbox 中,实时会话的自动分辨率提高到最小 1024×768Linux Mint 19.3 改进(HDT、引导修复、系统报告、语言设置、HiDPI 和插图改进、新的引导菜单、Celluloid、Gnote、绘图、Cinnamon 4.4、XApp 状态图标等...阅读全文

博文 2020-03-23 10:20:09 debian.cn

如何在敲代码时快速冷静 海豹突击队呼吸法

美国海豹突击队有一套 “让自己快速平静下来” 的技术,名曰:作战呼吸法(Combat Tactical Breathing)。这个中文名是我比比的,这三个单词我都认识,放一起这么翻译没错吧。 下次你遇到测试不通过啊,莫名其妙的 Bug,PM 找你改需求,在线系统的莫名其妙故障啊,你感到沮丧或者焦虑的时候,试试这个方法。我保证,效果比你用头撞墙好。 操作步骤(跟着以上 GIF 呼吸): 吸气 4 秒(蓝色圆圈扩大)保持你的肺部充满空气 4 秒(当蓝色圆圈最大并静止)呼气 4 秒(蓝色圆圈收缩)保持你的肺部空 4 秒(圆收缩并静止) 多次重复以上步骤,直到你恢复了平(lǐ)静(zhì)。然后,回去继续敲代吧。...阅读全文

博文 2019-03-04 13:24:50 debian.cn

如何读懂火焰图?+ 实例讲解程序性能优化 - xuxh120

火焰图(flame graph)是性能分析的利器。本文介绍它的基本用法。 一、perf 命令 让我们从 perf 命令(performance 的缩写)讲起,它是 Linux 系统原生提供的性能分析工具,会返回 CPU 正在执行的函数名以及调用栈(stack)。 通常,它的执行频率是 99Hz(每秒99次),如果99次都返回同一个函数名,那就说明 CPU 这一秒钟都在执行同一个函数,可能存在性能问题。 $ sudo perf record -F 99 -p 13204 -g -- sleep 30 上面的代中,perf record表示记录,-F 99表示每秒99次,-p 13204是进程号,即对哪个进程进行分析,-g表示记录调用栈,sleep 30则是持续30秒。 运行后会产生一个庞大...阅读全文

博文 2022-03-11 10:05:09 博客园

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

Golang 操作 Kafka 样例

1. Kafka介绍 1.1.1. Kafka是什么 kafka使用scala开发,支持多语言客户端(c++、java、python、go等) Kafka最先由LinkedIn公司开发,之后成为Apache的顶级项目。 Kafka是一个分布式的、分区化、可复制提交的日志服务 LinkedIn使用Kafka实现了公司不同应用程序之间的松耦和,那么作为一个可扩展、高可靠的消息系统 支持高Throughput的应用 scale out:无需停机即可扩展机器 持久化:通过将数据持久化到硬盘以及replication防止数据丢失 支持online和offline的场景 复制代 1.1.2. Kafka的特点 Kafka是分布式的,其所有的构件borker(服务端集群)、producer(消息生产...阅读全文

博文 2023-01-10 13:46:09 掘金

Cortex: 高可用和水平扩展Prometheus监控系统

Querier–查询器处理PromQL的求值。如果是最近的数据,则从大块存储和或内部获取样本其他组件:Ruler–处理alertmanager产生的警报Alertmanager –评估警报规则ConfigsAPI –在Postgres中存储Ruler和Alertmanager的配置Table Manager–负责在选定的块chunk/索引index存储后端中创建表Consul –存储分发服务器distributor生成的一致的哈希环(hash ring)。分发服务器在发送指标时使用散列值来选择ingester。与其他选项的异同ThanosThanos和Cortex具有非常相似的目标:聚合指标,将其存储在块存储中,并为所有度量使用一块single pane。因此,两个项目重用大量Prometheus代也...阅读全文

博文 2021-10-09 17:00:22 知乎

深入了解Docker背后的namespace技术

Docker基于mamespace、cgroups、chroot等技术来构建容器,不是一个系统调用就能搞定,容器是一个用户态的概念。本文中Docker软件工程师Michael Crosby深入探讨了Docker对namespace技术的应用。 相信你在很多地方都看到过“Docker基于mamespace、cgroups、chroot等技术来构建容器”的说法,但你有没有想过为何容器的构建需要这些技术? 为什么不是一个简单的系统调用就可以搞定?原因在于Linux内核中并不存在“linux container”这个概念,容器是一个用户态的概念。 Docker软件工程师Michael Crosby将撰写一些列博客,深入到Docker运行的背后,探索在 docker run这段代的背后发生了什么...阅读全文

博文 2015-05-17 10:03:00 debian.cn

Linux下多线程程序为什么消耗大量虚拟内存

] munmap(0x7f53d0000000, 13275136) = 0 [pid 19343] mmap(NULL, 8392704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f53d04a8000 Process 19495 attached 我检查了一下trace文件也没有发现大量内存mmap动作,即便是brk动作引起的内存增长也不大。于是感觉人生都没有方向了,然后怀疑是不是文件缓存把虚拟内存占掉了,注释掉了代中所有读写日志的代,虚拟内存依然增加,排除了这个可能。 灵光一现 后来,我开始减少thread的数量开始测试,在测试的时候偶然发现一个很奇怪的现象。那就是如果进程创建了一个线程并且在该...阅读全文

博文 2015-01-28 10:35:39 debian.cn

最全的 DevOps 工具集合

Jira Jira 是 Atlassian 开发的专用问题跟踪产品,提供了错误跟踪和敏捷项目管理功能。 JetBrains YouTrack YouTrack 是由 JetBrains 开发的,基于浏览器的专用商业软件,融合了错误跟踪器、问题跟踪系统以及项目管理软件。它的卖点是基于查询的问题搜索,拥有自动完成、分批处理问题、自定义问题属性集,以及创建自定义工作流的特性。 Zendesk Zendesk 可以轻松地从所有渠道跟踪每一个客户问题。目前 Uber 和 Airbnb 等许多公司都在使用 Zendesk Support 作为他们的问题跟踪软件。 源代控制 源代控制主要是为了控制资产,减少沟通障碍,赋能团队。目前业内比较常用的 SCM 工具包括 Git、GitHub、GitLab...阅读全文

博文 2021-05-26 14:35:21 博客园

Debian 10(代号 Buster)或于 2019 年中期发布

Debian 发行团队发布了有关即将到来的 Debian 10 “Buster” 的最新信息。Debian 发行团队目前计划在 2019 年 1 月 12 日开始往冻结状态过渡,2019 年 2 月 12 日处于软代冻结状态 (Soft Freeze),并最终于 2019 年 3 月 12 日左右进行全面冻结。 据表示,官方发布 Debian 10.0 “Buster” 的时间将是明年年中左右。 此外,对于 Debian 11 “Bullseye”,他们希望能通过持续集成、自动打包测试等方式引入更多的自动化 QA 测试,而根据过去的发布时间,Debian 11.0 可能会在 2021 年发布, 而 Debian 12 的代号也已经确定,被命名为“Bookworm”。显然,还要再过好几年才...阅读全文

博文 2018-04-19 08:13:42 debian.cn

SpringCloud 之外的选择:国产JBoot v1.7.1 发布

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 数据...阅读全文

博文 2018-10-24 13:19:05 debian.cn

DDR5 内存加速:Keysight 首发完整测试验证系统

电子测量企业 Keysight Technologies 近日推出了业界第一个完整的 DDR5 DRAM 测试与验证系统“N6475A DDR5 Tx”,为新一代内存的研发打开了方便之门。 这套系统包括 Keysight N6475A DDR5 Tx 兼容测试软件、M8040A 64 Gbaud 高性能比特误率测试仪 (BERT) 和 Infiniium UXR 系列实时示波器两种硬件,可对 DDR5 内存进行抖动、电子、时序、波形、眼图方面的测试,包括 DDR5 芯片、数据缓冲、寄存器芯片的发射器物理层。 程序会自动将测试结果与 DDR5 标准规范的兼容标准进行对比,展示产品是否通过每一项测试。 在此之前,DDR5 产品的开发者们必须自己设计软件,或者手动执行所有测试、分析,现在有了...阅读全文

Debian 26 岁生日快乐!Happy DebianDay!

美国当地时间 8 月 16 日(即今天),Debian 在官网发文庆祝诞生26周年。文中说到,26 年前的今天,Ian Murdock 在 comp.os.linux.development 新闻组中宣布完成了一个全新的 Linux 发行版,将其称为"Debian"。 从那天起,Debian 产生了超过 1,288,688,830 行代,生成了超过 300 个衍生版本,增加了 6155 个已知贡献者,并提交了 975,619 个bug报告。 Debian 在全球拥有数千个用户社区,大家聚集在一起主办 Debian 开发者年度大会,每年在不同的国家举办一次 Debian 开发者年度大会 DebConf,当然,今天在世界各地举办了许多 Debianday 庆祝活动。 现在就去开展一个即兴的...阅读全文

博文 2019-08-16 11:27:02 debian.cn

Debian 开发者正在为 Debian 打包 Unity 8 桌面环境

据 phoronix 的报道,Debian 开发者 Mike Gabriel 正在与 UBports 开发者合作,继续维护 Ubuntu Touch 和 Unity 8,以在 Debian 中提供 Unity 8(以及 Mir)软件包。 随着对 Unity 8 桌面环境支持的恢复,以及在平板电脑上没有适用于 Debian 的良好桌面环境,打包 Unity 8 和 Mir 正在为上游 Debian 提供了一个有用的选择。反过来,这也将有助于 Debian 衍生产品将来有望提供 Unity 8 作为桌面环境选项之一。 Mike 解释了选择 Unity 8 的原因,主要是它融合性的桌面功能:仅需一个代库,即可在手机、平板电脑和桌面上使用。目前,Unity 8 已在 Ubuntu 手机和各种平板...阅读全文

博文 2020-02-07 10:52:54 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

Python3: 二分法查找的两种实现方法

二分法查找是一种基础的、简单而高效的算法,又称为折半查找。顾名思义,就是将待查表一分为二,从而减少了查找次数,提高了效率。但缺点就是待查表必须为顺序表,并且待查表在查找时不宜做增删操作。 其最优时间复杂度为O(1),最坏时间复杂度为O(logn)。代样例: ``` # coding:utf-8 方法一:递归法 def binarySearch_01(listx, item): """Be of recursion""" length = len(listx) if length > 0: #定义中间值下标: split = length // 2 if listx[split] == item...阅读全文

树莓派4B降价 2GB内存版售35美元

树莓派(Raspberry Pi)微型计算机是备受全球开发者和极客们欢迎的产品,树莓派基金会于去年6月发布了Raspberry Pi 4 Model B,换用了速度更快的CPU,并提供了4GB大内存版本,还引入了USB 3.0,支持双屏4K输出与H.265解。 今年,树莓派即将迎来8岁生日,为了庆祝,树莓派基金会宣布,2GB内存版的树莓派4B降价,由原价45美元下调至35美元,同时原售价35美元的1GB版本停止发售。而4GB内存版价格保持不变,仍然是55美元。 根据去年底的统计数据,树莓派累计销量已超3000万件。树莓派4B算是一次较为重大的升级,核心处理器为博通BCM2711,采用四核Cortex A72架构,28nm工艺,主频1.5GHz。最高可选4GB LPDDR4内存,并提供千兆...阅读全文

博文 2020-02-28 10:34:01 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

Git 2.26 发布:传输协议 V2 成默认协议

name-rev 功能。其他各种性能改进。 Bug 修复 Windows 的 Git 现在可以克隆到当前用户可以写入的目录中,即使他们甚至没有权限读取父目录。通过 Git GUI 要求输入密时,现在可以正确处理非 ASCII 字符。git update-git-for-windows -y 现在可以完全自动化 更多详细信息可参见发布公告。...阅读全文

博文 2020-03-24 10:35:05 debian.cn

快速切换本地 hosts 的小程序 SwitchHosts

SwitchHosts 是一个用于快速切换本地 hosts 文件的小程序,便于开发人员快速修改测试域名的解析记录。SwitchHosts 基于 Electron 开发,同时使用了 React、Ant Design 以及 CodeMirror 等框架/库,项目主页为 https://oldj.github.io/SwitchHosts/。 SwitchHosts 主界面 SwitchHosts 功能特性 快速切换本地 hosts 文件hosts 文件语法高亮在线 hosts 方案系统托盘图标快速切换macOS: 支持 Alfred workflow 快速切换 下载安装 switchhosts 你可以直接下载源到本地运行或编辑,或者在下面下载可执行版本: SwitchHosts! 下载地址1...阅读全文

Git 介绍与使用详解

前言 Git是目前非常流行的协同开发工具,很多开源网站都使用Git作为代管理仓库(例如 开源中国,GitHub),不管是开发还是产品、设计师,Git都很适合,而且很多IDE默认集成了Git,熟练的使用Git会起到事半功倍的效果,所以今天我为大家分享一下Git的介绍与使用。 1.Git是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一)。 1.1什么是版本控制? 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。如果你是位网页设计师,可能会需要保存某一幅图片或页面布局文件的所有修订版本。 有了它你就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某个时间点的状态,你也可以比较文件的变化细节,查出最后是谁修改了哪个地方,从而找出导致怪异问题...阅读全文

博文 2017-02-25 09:00:27 程序员

DPDK Graph Pipeline 框架简介与实现原理

, dst); } 复制代 Graph 遍历 node的流程 /** * @file lib/graph/rte_graph_worker.h:rte_graph_walk */ /* * Walk on the source node(s) ((cir_start - head) -> cir_start) and then * on the pending streams (cir_start -> (cir_start + mask) -> cir_start) * in a circular buffer fashion. * * +-----+ <= cir_start - head [number of source nodes] * | | * | ... | <= source...阅读全文

博文 2023-02-09 07:13:55 掘金

Scrapy 架构及数据流图简介

URL的类。 每个spider负责处理一个特定(或一些)网站。 Item Pipeline Item Pipeline负责处理被spider提取出来的item。典型的处理有清理、 验证及持久化(例如存取到数据库中)。 下载器中间件(Downloader middlewares) 下载器中间件是在引擎及下载器之间的特定钩子(specific hook),处理Downloader传递给引擎的response。 其提供了一个简便的机制,通过插入自定义代来扩展Scrapy功能。 Spider中间件(Spider middlewares) Spider中间件是在引擎及Spider之间的特定钩子(specific hook),处理spider的输入(response)和输出(items及requests...阅读全文

博文 2017-07-23 22:56:26 debian.cn

历数2017年五大Linux痛点

Linux操作系统为许许多多用户安装和使用,难免会遇到一些问题。正如2016年我们总结过5大Linux故障排除技巧一样,在即将过去的2017年里,我们依然搜集了用户在使用Linux系统时发现的问题,在此总结综述为"2017年五大Linux痛点",直指用户使用的关键点,希望能对您有所帮助。 1.文档 文档的问题是你今年最大的痛点吗?开源的方式产生了大量优秀的代,文档的质量也因此上升了一个台阶。随着越来越多的非技术用户采用Linux和开源软件,文件的质量和数量将变得至关重要。如果您想为开源项目做贡献,但又不觉得自己有足够的技术来提供代,那么改进文档是一个很好的参与方式。许多项目甚至将文档保存在它们的存储库中。因此你可以通过自己的贡献去改进工作的效率。 2.软件/版本不兼容 软件版本不兼容的...阅读全文

博文 2017-11-25 12:27:56 debian.cn

2018 GitHub 最火技术趋势

。Warner强调说,安全性必须是代不可分割的一部分,不能简单地在生产过程中才添加至系统。Warner看到了由于对机器学习的关注,对目前的安全领域产生了巨大影响,这种趋势最终会导致构建的系统会受一个自动的保护机制所保护。 云服务基础设施方面将会有工具和服务的增长,这些工具和服务将减少开发人员对基础设施的关注,开发人员能够更自由地专注于构建他们的产品和项目。这一过程将会与Warner所谓的“工作流战争(workflow war)”相关联: 随着大型科技公司开始收购那些专注于提升开发人员体验、解决基础设施问题以及构建更好的工作流工具的小型企业,企业的并购活动将会升温。 开源软件将在2018年继续发展,并将成为许多开发封闭源代系统公司的重要竞争对手。据Warner所说,这一趋势在过去的10年中一直都很强劲...阅读全文

博文 2017-12-14 22:50:29 debian.cn

Rancher 2.2.2 发布:优化 Kubernetes 集群运维

Rancher 2.2.2 发布了。Rancher 是一个开源的企业级 Kubernetes 平台,可以管理所有云上、所有发行版、所有 Kubernetes 集群,解决了生产环境中企业用户可能面临的基础设施不同的困境,改善 Kubernetes 原生 UI 易用性不佳以及学习曲线陡峭的问题。 新版本的更新亮点有: Rancher CVE-2019-11202 修复 开发团队发现过一个问题:Rancher 首次启动时创建的默认管理员帐户将在 Rancher 的后续重新启动时重新创建,即使 Rancher 管理员明确删除了该帐户,也仍会如此。这会带来一定的安全风险,因为帐户是使用 Rancher 的默认用户名和密重新创建的。因此,攻击者可以使用这些默认账号密来获取对 Rancher...阅读全文

博文 2019-04-22 13:49:38 debian.cn

PHP 7.4 有哪些新特性

PHP 7.4 的GA版今天正式发布了。PHP 7.4发布后,PHP 7.3或其它的PHP 7版本都可以升级到PHP 7.4版。 PHP 7.4 的主要特性包括以下几个, 短闭包函数(short closure)预加载提交性能属性类型限定Improved type variance(不会翻译)三元运算简写数组展开运算新增类的魔术方法:serialization数字分隔符运算优先顺序允许在__toString中抛出异常支持反射引用新增字节分割函数移除php短标签弃用左关联运算符不再向后兼容的变更 短闭包函数 短闭包函数可以减少冗余代: array_map(function (User $user) { return $user->id; }, $users) array_map(fn...阅读全文

博文 2019-11-29 20:45:16 debian.cn

Django 采用新的项目治理模式

Django 此前的治理模式不太合理,对于持续发展壮大的 Django 社区产生阻碍。官网博客介绍,最开始 Django 项目发起人(Adrian Holovaty 和 Jacob Kaplan-Moss)可以授权其他人 commit 的权限。到了 2014 年,committer 的核心团队人数已经不少,在两位创始人辞去领导职务后, 保留了一个核心 committer 团队的基本结构,该团队可以根据自己的选择向 Django 添加代。同时创建了一个新的小组:由核心 committer 选举产生的由 5 名 committer 组成的“技术委员会”,并作为最终的决策者。 但是实际上,现在几乎所有添加到 Django 的代都由 Django Software Foundation(DSF...阅读全文

博文 2020-03-26 08:51:49 debian.cn

岗位需求: CTO

CTO 招聘需求 ** 职位介绍:** 1. 全面负责技术层面的整体运营,制定研发战略和计划,负责全面实施,并与业务发展需求. 系统现状等结合起来; 2. 全面支持平台日常安全运营. 系统维护. 升级,确保公司各项投融资业务能在网站上安全. 有序开展,保障系统和数据的安全. 稳定; 3. 负责平台的研发与核心技术管理工作,组织制定和实施重大技术决策和技术方案; 4. 研究决策网站技术发展路线,规划公司产品的技术构架,负责互联网产品技术框架的选型与搭建,程序开发及技术攻坚; 5. 网站的技术团队的梯队化建设及管理,包括技术团队的培养; 6. 主导公司技术架构. 数据库结构. 业务逻辑等编工作; 7. 负责制定技术开发规范. 编规范等技术团队...阅读全文

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

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

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

MySQL 8 第一个正式版发布:更好的性能

“隐藏”和“显示”。当对索引进行隐藏时,它不会被查询优化器所使用。我们可以使用这个特性用于性能调试,例如我们先隐藏一个索引,然后观察其对数据库的影响。如果数据库性能有所下降,说明这个索引是有用的,然后将其“恢复显示”即可;如果数据库性能看不出变化,说明这个索引是多余的,可以考虑删掉。 5. 降序索引:MySQL 8.0 为索引提供按降序方式进行排序的支持,在这种索引中的值也会按降序的方式进行排序。 6. 通用表表达式(Common Table Expressions CTE):在复杂的查询中使用嵌入式表时,使用 CTE 使得查询语句更清晰。 7. UTF-8 编:从 MySQL 8 开始,使用 utf8mb4 作为 MySQL 的默认字符集。 8. JSON:MySQL 8 大幅改进了对...阅读全文

博文 2018-04-20 10:40:18 debian.cn

Debian 环境下安装配置 Gitlab

GitLab是一个利用Ruby on Rails开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。 它拥有与GitHub类似的功能,能够浏览源代,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。 前言 公司目前的开发架构中,使用了gitlab来统一管理上线发布代的操作。鉴于是之前的前辈搭建的,所以打算自己手动安装一次,来熟悉相关的配置。 安装 中文版gitlab网站:https://www.gitlab.com.cn/installation/ 英文版gitlab网站:https://about.gitlab.com/downloads/ 选择对应的操作系统 我这里选择 Debian 9 版本,因为...阅读全文

博文 2017-12-22 19:42:42 debian.cn

网易云音乐Linux版v1.1发布 支持 Debian Stretch

时隔近一年半的时间,网易云音乐 Linux 版本终于迎来了更新,本次更新除了迁移到QCEF框架,对GNOME、KDE桌面环境支持更好,支持最新 Debian 9、Ubuntu 17.10版本(仅64位),还优化和修复各个社区用户反馈的问题。 具体的细节优化如下: 迁移全新的QCEF框架; 使用了全新的播放器后端; 支持打开更多格式的本地文件; 优化播放时内存占用资源问题; 优化扫描本地音乐目录,支持读取下载任务的状态; 优化第三方字体的支持; 优化淡入淡出效果和在线播放; 优化更好的支持Wayland环境; 移除了沙盒机制; 修复部分本地音乐播放存在卡顿的问题; 修复Tooltip位置偏移的问题; 修复在Qt 5.9中界面乱的问题; 修复GPU加速选项无效的问题; 修复无法捕获本地目录变...阅读全文

博文 2017-12-02 18:34:00 debian.cn

Debian 上安装搭建 Shadowsocks 服务

-recommends build-essential autoconf libtool libssl-dev gawk debhelper pkg-config asciidoc xmlto apg 然后需要从 github 上把源代 git 下来 $ git clone https://github.com/shadowsocks/shadowsocks-libev.git 然后进入 shadowsocks-libev 目录下进行编译 $ cd shadowsocks-libev $ dpkg-buildpackage -b -us -uc -i $ cd .. $ dpkg -i shadowsocks-libev*.deb 编译是通过生成 deb 包然后进行安装,其实也可以通过 make 的方式来进行...阅读全文

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

Web前端知识体系精简

创建一个新对象时,JS底层将新对象的原型链指向了构造函数的原型对象,于是就在新对象和函数对象之间建立了一条原型链,通过新对象可以访问到函数对象原型prototype中的方法和属性。new的详细介绍请参考博客:理解JS中的new运算符 5、闭包 闭包其实是一个主动执行的代块,这个代块的特殊之处是可以永久保存局部变量,但又不污染全局变量,可以形成一个独立的执行过程,因此我们经常用闭包来定义组件。关于闭包的介绍请参考:干货分享:让你分分钟学会JS闭包 6、单线程和异步队列 setTimeout和setInterval是JS内置的两个定时器,使用很简单,但这两个方法背后的原理却不简单。 我们知道,JS是单线程语言,在浏览器中,当JS代被加载时,浏览器会为其分配一个主线程来执行任务(函数),主线...阅读全文

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

Apollo 配置中心简单介绍

- 框架类组件配置,比如CAT客户端的配置。虽然这类框架类组件是由其他团队开发、维护,但是运行时是在业务实际应用内的,所以本质上可以认为框架类组件也是应用的一部分。这类组件对应的配置也需要有比较完善的管理方式。 2、Why Apollo 正是基于配置的特殊性,所以Apollo从设计之初就立志于成为一个有治理能力的配置管理平台,目前提供了以下的特性: 统一管理不同环境、不同集群的配置 Apollo提供了一个统一界面集中式管理不同环境(environment)、不同集群(cluster)、不同命名空间(namespace)的配置。同一份代部署在不同的集群,可以有不同的配置,比如zk的地址等通过命名空间(namespace)可以很方便的支持多个不同应用共享同一份配置,同时还允许应用对共享的配置进行覆...阅读全文

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

Python的闭包和装饰器

什么是装饰器? 装饰器(Decorator)相对简单,咱们先介绍它:“装饰器的功能是将被装饰的函数当作参数传递给与装饰器对应的函数(名称相同的函数),并返回包装后的被装饰的函数”,听起来有点绕,没关系,直接看示意图,其中 a 为与装饰器 @a 对应的函数, b 为装饰器修饰的函数,装饰器@a的作用是: 简而言之:@a 就是将 b 传递给 a(),并返回新的 b = a(b) 栗子: 上面使用@dobi来表示装饰器,其等同于:qinfeng = dobi(qinfeng)因此装饰器本质上就是个语法糖,其作用为简化代,以提高代可读性,运行上段代的结果为: 解析过程是这样子的: 1.python 解释器发现@dobi,就去调用与其对应的函数( dobi 函数) 2.dobi 函数调用前要指...阅读全文

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

Debian 10 Buster 正式版即将发布

: GNOME 桌面 3.30 Debian Stretch 版中的 GNOME 桌面在 Buster 中从 1.3.22 升级到了 1.3.30。在 GNOME 桌面发布版中新包含的一些包是 gnome-todo、tracker 替代了 tracker-gui、gstreamer1.0-packagekit 的依赖,因此可以通过自动地安装编器来做播放电影之类的事。对于所有包来说一个大的改变是从 libgtk2+ 到 libgtk3+。 Linux 内核 4.19.0-4 Debian 使用 LTS 内核版本,因此你可以期待更好的硬件支持和长达 5 年的维护和支持周期。我们已经从内核 4.9.0.3 到 4.19.0-4。 OpenJDK 11.0 Debian 在很长时间里都是 OpenJDK...阅读全文

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

深入学习golang — channel

Channel 1. 概述 “网络,并发”是Go语言的两大feature。Go语言号称“互联网的C语言”,与使用传统的C语言相比,写一个Server所使用的代更少,也更简单。写一个Server除了网络,另外就是并发,相对python等其它语言,Go对并发支持使得它有更好的性能。 Goroutine和channel是Go在“并发”方面两个核心feature。 Channel是goroutine之间进行通信的一种方式,它与Unix中的管道类似。 Channel声明: ChannelType = ( "chan" | "chan" "<-" | "<-" "chan" ) ElementType . 例如: var ch chan int var ch1 chan<- int //ch1只能写...阅读全文

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