- 博客(566)
- 资源 (22)
- 问答 (1)
- 收藏
- 关注
原创 java原生序列化慢在哪里?
Java原生序列化和二进制序列化性能比较序列化速度package com.clq.netty.serializable;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.ObjectOutputStream;import java.io.Serializable;im...
2018-07-20 16:42:29 1933
原创 如何实现 99.999999999% 的耐用性
这篇文章概述了 Amazon S3 如何提供令人难以置信的耐用性。如果您想了解更多信息,请滚动到底部并找到参考资料。1 背景故事2010 年 11 月 - 法国巴黎。一位名叫朱莉娅的年轻软件工程师在一家制药初创公司工作。他们每天都会创建许多日志文件。耐用性对他们的商业模式来说很重要。然而他们将数据存储在内部的一个小型服务器机房里。生活很美好。随着季节的流逝。但是有一天。他们的主数据服务器的硬盘...
2024-07-16 08:20:11 809
原创 解决软件性能问题的实用思路
我们的大脑有两种不同的工作模式,尤其是在我们解决问题时:直觉和分析。直觉是当我们没有积极和努力思考某事时,我们的大脑所处的模式。它是自动的。分析是我们真正付出努力并以专注的方式在大脑中勤奋工作的模式。例如,如果你看到一个非常简单的等式1+1 =你不会花任何力气去解决它。你从小就知道 1 + 1 = 2。答案是立竿见影的。这是你的大脑在自动模式下做的事情。然而,如果你看到19×35=你可能得花点脑力...
2024-07-04 08:28:11 755
原创 团队逼走一个程序员有多简单?
1 不信任程序员程序员做了一个方案,整个系统是用 Java 实现的,老板看到了说,为什么要用 Java,而不是 Golang,能不能证明一下 Java 的各个方面的指标真的比 Golang 强?自己选择 Redis 作为非关系型数据库存储,老板说为啥不用 Memcached,这 2 者之间的优劣势,是否需要做一个对比?总之就是咬死每一个细节问题。2 引入繁琐复杂的软件开发流程一个不到 10...
2024-06-27 08:37:48 351
原创 关于程序员的从不、偶尔和总是
在软件开发中,我们经常使用零、一、无穷、规则(或“零一多”)来决定应该允许多少个实例。例如,数据库中的客户记录可能没有与之关联的电子邮件地址,可能只有一个电子邮件地址,也可能有多个电子邮件地址。如果您目前支持一个电子邮件地址,而有人说他们需要两个,那么您应该跳过两个,直接无限增加。只添加对第二个电子邮件地址的支持是一个坏主意,因为您仍然需要处理可变数量(一个或两个),因此处理任何数量实际上都更简单...
2024-06-25 22:20:03 567
原创 软件监控发展简史
软件监控简史,从 00 年代开始。发生了什么变化?为什么事情变得如此神秘?终端设备上日益重要的用户体验通过边缘计算和分布式计算不断得到改善。然而,服务质量的测量仍然使用基于服务器的原语进行。我们的 2000 年软件监控是这样的:用户通过浏览器访问网络。互联网速度缓慢且不稳定,因此糟糕的体验不会导致客户流失。这个时间段,各种基建发展的不完善,大家主力对象都是PC,上网时间比较短,场景也比较少,慢是预...
2024-06-19 08:37:26 628
原创 OpenShift 与 Kubernetes的关键区别
介绍 在快速发展的 DevOps 和云原生应用程序领域,容器编排已成为管理和部署可扩展应用程序的关键组件。该领域的两个主要参与者是 OpenShift 和 Kubernetes。但它们有何不同?您应该为您的组织选择哪一个?让我们深入了解这两个平台的复杂性,以帮助您做出明智的决定。什么是 Kubernetes? 定义和核心功能Kubernetes,通常缩写为 K8s,是一个开源平台,旨在自动部署、扩...
2024-06-04 22:20:53 668
原创 Dockershim 与 Containerd:两种容器运行时的故事
在不断发展的容器化世界中,两个关键组件经常被混淆:Dockershim 和 containerd。虽然它们在管理容器方面都发挥着重要作用,但它们的用途却截然不同。本文深入探讨了它们的功能,深入探讨了 Dockershim 和 containerd 之间的区别。揭秘 Dockershim:Docker Orchestrator Bridge Dockershim 是 Docker 运行时垫片的缩写,...
2024-06-02 15:22:20 1091
原创 为什么您的监控成本很高?
如果你想降低监控成本,你需要改变工程决策瘫痪的局面。经过三年对 DevOps 和 SRE 领域的痴迷,我现在可以自信地说,公司为监控成本付出的成本比生产级代码的成本还要高。在之前我对此并没有信心,认为其中存在异常,而且这可能看起来有点离谱。但现在,我几乎可以肯定这一点;对于那些努力跟上数字化转型浪潮的大公司来说更是如此。对于那些从遗留系统迁移过来的人来说,他们受到了容器化、Kubernetes 和...
2024-05-26 22:45:02 259
转载 实现最佳成本和结果的云策略:公共云、私有云、混合云
在典型企业在云资源上超支 20% 到 30%的时代,找到控制云成本的方法至关重要。但究竟如何控制云支出呢?通常,有关此主题的建议侧重于进行小规模更改,例如调整云服务器实例的大小或利用成本较低的数据存储层 - 这些举措可以为您节省一些钱,但通常不会带来最大的整体效果。如果您确实想优化云支出,则需要通过评估整体云架构来进行更高层次的思考。您可能会发现进行架构更改(例如 将部分或全部工作负载迁移到私有云...
2024-05-20 08:11:24 45
转载 Docker 和 Kubernetes 之间的区别,了解一下
您曾经想知道 Docker 和 Kubernetes 之间的区别。过去当 Kubernetes 删除 Docker 支持时,我们感到很困惑。如果是这种情况,那么这篇文章适合您。在现代软件开发和 DevOps 领域,容器化已成为打包和部署应用程序的基本方法。Docker 和 Kubernetes 是该领域非常受欢迎的两种工具。虽然两者都与容器化相关,但它们具有不同的目的。让我们看看 Docker 和...
2024-05-18 17:23:13 44
转载 安全高于一切——Microsoft 的安全未来计划
2024 年 5 月,首席执行官萨蒂亚·纳德拉 (Satya Nadella) 向微软员工分享了以下信息。去年 11 月,我们启动了安全未来计划(SFI),为应对规模和风险不断增加的网络攻击做好准备。 SFI 汇集了 Microsoft 的各个部门,以推进我们公司和产品的网络安全保护。从那时起,威胁形势持续快速发展,我们学到了很多东西。美国国土安全部网络安全审查委员会 (CSRB) 关于去年 7 ...
2024-05-09 20:32:09 38
转载 上层应用的基石:分布式协议
故障模式故障发生和检测的方式对于许多算法都很重要。以下是最常用的:故障停止故障停止意味着如果节点出现问题,每个人都能知道并检测到它,并能从稳定的存储中恢复状态。这在理论和协议上都是简单的模式,但在实践中却很难实现(在某些情况下甚至是不可能的)崩溃故障崩溃故障意味着,如果节点或代理出现问题,它就会崩溃,然后再也不会回来。你要么永远正确,要么永远迟到。这在理论上比故障停止更容易设计(但操作起来非常麻烦...
2024-04-25 22:15:10 28 1
转载 ChatGPT是如何工作的?ChatGPT团队给出的解释
ChatGPT 如何运作? 对于我们这些过去几年没有从头开始构建 ChatGPT 的人来说,它是如何工作的?当您向 ChatGPT 询问问题时,会发生以下几个步骤:输入: 我们从文本输入中获取您的文本。代币化: 我们将其分成令牌。一个令牌大致映射到几个 unicode 字符。你可以把它想象成一个词。创建嵌入: 我们将每个标记转换为数字向量。这些称为嵌入。将嵌入乘以模型权重: 然后,我们将这些嵌入乘...
2024-04-24 08:17:37 51
转载 为什么 Windows 的安全性不如 Linux
Windows 本质上比 Linux 更难保护。我在那里说了。简单的道理。关于这个话题已经有数百万字的文字和言论。我有几张照片。基本论点是这样的。在其漫长的发展过程中,Windows 变得如此复杂,以至于更难以确保安全。这些图像很好地说明了这一点。两个图像都是当 Web 服务器提供带有单个图片的单个 html 页面时发生的系统调用的完整映射。相同的页面和图片。系统调用是寻址内存的机会。黑客会调查每...
2024-04-12 08:05:55 62
转载 15年程序员一朝变成外卖员,震撼的同时感觉震惊
一个程序员的编年史00-前言诗人问:“你见到过凌晨四点钟的太阳吗?”程序员:“见到过啊,那时候我通常刚下班。怎么了?”诗人无言以对。我做软件开发已经 15 年了,从小鲁到鲁工,到鲁经理,再到鲁总监。有些公司,做着做着就没了;有些项目,做着做着就黄了;有些团队,做着做着就散了。社会的浪潮汹涌澎湃,我们都是浪花中的一粒水珠,随着这个大潮起起伏伏。01 一行代码五万元2007 年,我在太皓电子担任....
2024-04-07 21:23:06 109 1
转载 您是否优先考虑内存安全的编程语言?
来自五个不同国家政府的网络安全机构去年 12 月呼吁开发人员使用内存安全的编程语言。你准备好了吗?去年 12 月,来自多个国家(美国、英国、加拿大、澳大利亚、新西兰)的网络安全机构共同发布了一份名为“内存安全路线图案例”的文件。虽然内存安全编程语言不是讨论主题,但它是一个重要的安全问题,应该被理解。首先,快速解释内存安全与内存不安全编程语言。在内存不安全语言中,开发人员负责手动分配和释放内存,这可...
2024-04-06 10:33:08 52
转载 Linux xz 库中的恶意代码危及 SSH
大多数用户不会受到此恶意软件的影响,但如果它再几个月未被发现,那么每个使用 Linux 的人都将面临有史以来最大的安全灾难。您可能从未听说过 xz 数据压缩代码,但它对许多程序至关重要,而且我们现在知道有人在其中植入了恶意代码。当红帽 首次爆料最新版本的 xz 数据压缩库包含陷阱时,人们感到担忧,但并没有太担心。毕竟,他们推断,许多人一开始似乎认为这只是另一个安全漏洞。而其他人则认为,如果它只影响...
2024-04-02 21:31:26 78
转载 xz-utils包被植入后门三年,跟网文一样精彩的攻击故事
下面来扒一下这位提交代码的作者。几个月就对这个 GitHub 账号有点印象。不是我马后炮,而是我当时正好在维护一个一键部署 frida-server 的脚本,有人反馈他们的发行版上没有自带 xz 命令;而 nodejs 的 lzma 包又有兼容性问题,我就考虑要不要把 lzma 用 wasm 编译到项目里去。我当时去 lzma 库的主页逛了一圈,就觉得有点奇怪,这个两个维护人,其中一个的名字看着像...
2024-03-30 15:19:26 79
原创 LinkedIn 互联网架构扩展简史
LinkedIn成立于 2003 年,其目标是连接到您的网络以获得更好的工作机会。第一周只有 2,700 名会员。时间快进了很多年,LinkedIn 的产品组合、会员基础和服务器负载都取得了巨大的增长。如今,LinkedIn 在全球运营,拥有超过 3.5 亿会员。我们每天每秒都会提供数以万计的网页。我们已经进入了移动时代,移动流量占全球流量的 50% 以上。所有这些请求都从我们的后端系统获取数据,...
2024-03-26 21:59:55 747
转载 Uber互联网架构扩展简史
2008 年巴黎一个寒冷的夜晚,特拉维斯·卡兰尼克 和加勒特·坎普打不到出租车。就在那时,Uber 的想法诞生了。如果你可以“按一下按钮就可以搭车”,那该多好啊?快进到今天,优步已成为世界上最大的移动平台。它在 70 多个国家和 10,500 个城市开展业务。Uber Eats 优食是全球除中国以外最大的外卖平台。它在 45 个国家/地区开展业务。我们将数百万司机合作伙伴和商家与超过 1.3 亿客...
2024-03-25 21:35:52 52
原创 软件架构师质量要求终极指南:满足利益相关者的期望
发现现代技术和工具,以有效地引出、记录和改进软件计划的质量要求的管理。每个利益相关者都有它们:非功能性需求或至少对下一个软件计划的(非功能性)期望。“它必须要快。”“它应该很容易维护。”“它应该是可扩展的。”“它应该提供良好的用户体验”“可以快速轻松地开发新功能。”但往往没有人能够解释性能效率、可扩展性、可用性、耦合性、可维护性等含义。软件架构师的一项基本任务是确保特定软件系统的质量目标变得具体并...
2024-03-13 08:28:17 390
转载 Golang 编写 MySQL UDF
一、MySQL UDF这玩意全称 “MySQL user-definable function”, 从名字就可以看出来叫 “用户定义的方法”; 那么 UDF 到底是干啥的呢?简单一句话说就是说: 你可以自己写点代码处理数据, 然后把这段代码编译成动态链接库(so), 最后在 MySQL 中动态加载后用户就可以用了.二、解决方案由于要检查数据库, 但是实际上审查并不会关注每个表甚至数据库细节; 所以...
2024-03-06 08:01:02 48
转载 不要再使用旧版本的CLI
Linux CLI 是每个软件工程师日常工作流程的一部分。但我仍然看到许多开发人员依赖已经存在了几十年的遗留工具。是时候升级您的 CLI 工具带并改用更快、更强大、更灵活的工具了。grep → ripgrep (rg)速度明显更快,尊重.gitignore文件,并提供更用户友好的语法和输出。它旨在提高搜索或过滤大量文本的速度和效率。如果您只想尝试此列表中的一种工具 - 请尝试 ripgrep。fi...
2024-02-28 08:01:00 394
转载 无服务器架构揭秘:成功策略和要避免的陷阱
无服务器架构揭秘:成功策略和要避免的陷阱2014 年亚马逊宣布了 AWS Lambda。无服务器计算的概念开始受到重视,AWS Lambda 将其带入主流。在过去的十年中,我们很荣幸能够将服务器管理从我们手中抽象出来。对于我们想要的抽象程度,现在有多种选择。在 2014 年之前,在容器编排服务和无服务器计算出现之前,服务器管理涉及更加手动和复杂的过程。无服务器架构极大地改变了云计算。今天将探讨无服...
2024-02-23 08:03:34 46
转载 使用 OpenCost 和 Levitate 控制 Kubernetes 成本
使用 Levitate 设置 OpenCost 以监控 Kubernetes 集群的成本。有效控制运营费用在 Kubernetes 的部署和管理中起着至关重要的作用。虽然 Kubernetes 使用户能够增强对部署的控制,但它需要对相关成本的深入了解和有效管理。OpenCost 专为 Kubernetes 成本监控量身定制,与 Levitate 相结合,提供了应对这一挑战的整体解决方案。在本博客中...
2024-02-21 08:14:42 107
转载 Kubernetes 已经是一个云操作系统
我们不要再称 Kubernetes 为“容器编排器”了。如果您还不了解 Kubernetes,这个术语会让人感到困惑。当我开始时,我不明白编排是什么,也不明白为什么容器需要它。我们不如将 Kubernetes 称为“云操作系统”。Kubernetes 真的是一个操作系统吗?以下是传统操作系统 (OS) 所做的事情:资源管理调度安全硬件抽象用户多任务处理网络终端服务Linux /Windows 为单...
2024-02-20 08:02:28 51
转载 为什么分布式系统会失败?
分布式系统很棘手——很容易做出错误的假设,从而导致未来出现问题。早在 90 年代,计算机科学家 L. Peter Deutsch就发现了几种常见的误解或“谬误”,这些误解使从事分布式系统的工程师陷入困境。令人惊讶的是,这些谬论在今天仍然适用:网络是可靠的:假设网络 100% 可靠是有风险的。网络可能并且确实会以各种方式失败。延迟为零:虽然我们可能希望我们的网络没有延迟,但这在物理上根本不可能——即...
2024-02-19 08:03:26 59
转载 Sora OpenAI:从文本生成令人兴奋的视频 AI 模型
想象一下,您可以通过简单的文本提示创建令人惊叹的视频,例如“一个人带着狗在月球上行走”。听起来不可能,对吧?好吧,现在不再这样了,感谢 OpenAI 的最新人工智能模型 Sora,它可以从文本生成令人兴奋的视频。Sora 是一种 AI 模型,可以生成长达一分钟的视频,具有高度详细的场景、复杂的摄像机运动以及充满活力的情感的多个角色。它还可以基于静态图像创建视频或使用新材料扩展现有镜头。Sora 的...
2024-02-18 08:02:16 47
转载 越来越怀疑这个世界是虚拟的了
刚刚,奥特曼发布OpenAI首个视频生成模型Sora。Sora是一个扩散模型,它从看起来像静态噪声的视频开始生成视频,然后通过多个步骤消除噪声来逐步对其进行转换。Sora 能够一次生成整个视频或扩展生成的视频以设置更长的时间。一次通过为模型提供多帧的预测,解决了我们遇到的一个棘手的问题,即确保主题即使离开暂时视野也保持不变。与GPT模型类似,Sora使用变压器架构,释放出卓越的扩展性能。我们将视频...
2024-02-16 16:13:36 65
原创 腾讯年薪百万算法程序员真的不如基层公务员么?
图片是DALL3自动生成的,有需要的可以关注公众号后台私信我就算年薪几百万,回老家也在鄙视链最底端。首先你是一个体制外的打工人,不管挣多少、在哪个城市,那也不过是个打工的。甚至根本没人关心你挣多少、从事什么工作,再说了很多人根本不会相信你真的挣了这么多钱。然后在你本地的亲戚邻居村民们眼中,只有在本地、最好是本县里吃公粮的才是最值得尊敬和高看一眼的。因为这些人是看得见摸得着的,有事的时候也能用得上。...
2024-02-16 09:15:39 421
原创 时至今日,收学费依然是最稳定的商业模式
清晰记得小学五年级的时候,当时已经开学一个月了,班主任在班上点名说,现在班里还有几位没有缴纳学费的同学站起来,你们也没有新书,天天看同桌的书本,学习也不方便,现在可以拿着书包回家,如果准备继续学习的话,把自己的家长请过来。然后有一个女同学站起来说爸爸已经再三交代了,先交一百可以吗?剩下的两百再等等。老师嘿地一声笑了,然后说了句至今仍然适用的话,这个世界上知识和健康是无价的,你见过在学校和医院里面讨...
2024-02-15 12:18:07 183
转载 2024 年 SRE 的 5 个预测
站点可靠性工程角色发展迅速。进入 2024 年,我对今年 SRE 领域可能会看到的情况提出了 5 个预测:1️⃣ SRE 的就业市场更加严峻由于经济状况恶化,许多公司希望削减成本,专门的 SRE 角色可能被视为可牺牲的 - 因此 SRE 人数和预算可能会减少。许多组织过渡到类似亚马逊的模式,其中瑞典工程师将“包揽一切”。基础设施管理、操作强化、事件跟踪和待命正在成为工作的一部分,因此可靠性工程师将...
2024-02-14 11:18:54 57
转载 为什么许多设计师感觉人工智能很混乱?
最近,我遇到了一些设计师,他们真的很难接受人工智能的新进步是一件好事。我理解他们的怀疑态度,并在一定程度上理解他们为什么会有这样的感觉。如果你问我,我会说人工智能并不是一件坏事,也不是一件值得恐惧的事情,至少在现阶段是这样。1. 人工智能会抢走你的工作吗?人工智能可以帮助你做很多事情。从自动执行复杂的任务到总结您的摘要,再到帮助您重新措辞电子邮件,再到撰写我们的博客文章。(PS.这篇文章是我写的,...
2024-02-13 16:41:43 32
转载 2024 年值得关注的 8 大云计算趋势
在本文中,了解人工智能的影响、关键技术预测以及云基础设施不断发展的格局。另外文末有惊喜。您是否知道全球在云计算基础设施上的支出预计将2024年首次突破1万亿美元?这是一个惊人的数字!不仅仅是大公司正在朝这个方向迈进;小型组织也在积极接受这种变革。那么,推动云基础设施大量投资的关键技术和新兴趋势是什么?这种转变如何塑造全球企业的未来?这些互动为我提供了一些有关明年云技术预测的富有洞察力的信息。这就是...
2024-02-02 08:18:04 62
转载 2024 Kubernetes 基准报告:Kubernetes 工作负载的最新分析
Kubernetes 的采用不断增长,使组织能够自动化容器化应用程序的部署、管理和扩展。与此同时,DevOps、平台工程和开发团队正在更密切地关注其工作负载的可靠性、安全性和成本效率。Fairwinds 通过分析超过 100,000 个 Kubernetes 工作负载,于 2022 年创建了 Kubernetes 基准报告。目标是帮助组织了解他们的容器配置、需要改进的共同领域,并与同行相比检查他们...
2024-01-30 08:02:28 53
转载 逻辑学与算法和数据结构的关系
每个好主意都会被发现两次:一次被逻辑学家发现,一次被计算机科学家发现。这句话的背后可能有几个原因:问题的普遍性: 有些问题或挑战是跨学科的,涉及多个领域的知识。一个好的解决方案可能需要不同领域的专业知识结合,逻辑学家和计算机科学家分别代表了理论和实践的两个方面。思维的互补性: 逻辑学家和计算机科学家在解决问题的方式上可能有不同的思维方式。逻辑学家可能更注重理论和抽象的思考,而计算机科学家可能更注重...
2024-01-29 20:21:18 76
转载 2024 年 15 大软件开发趋势
步入 2024 年,在技术创新和不断变化的市场需求的推动下,软件开发格局继续呈指数级发展。对于企业和开发人员来说,紧跟这些趋势不仅有益,而且对于保持竞争力和成功至关重要。在本文中,我们探讨了预计将在 2024 年产生重大影响的关键软件开发趋势。2024年软件工程通用原理定义 2024 年 IT 行业的通用软件开发方法包括人工智能和机器学习技术的进一步集成、区块链的利用和多运行时微服务。AR和VR的...
2024-01-24 08:00:18 226
转载 1% 顶尖工程师的 7 个简单习惯
我曾与杰出的工程师一起工作过,他们既有在 FAANG 这样的大公司,也有像初创公司这样的小公司。他们让我看到了神话般的“10x”工程师——他们确实存在于现实生活中!其中一些工程师后来创办了自己的公司,领导了改变我们所知的网络的开发,或者已经成长为当今大型科技公司领导价值数十亿美元的项目。在与他们一起工作的整个过程中,我注意到他们在编写的代码中都有一些重叠的习惯。代码是为人类而不是计算机编写的“任何...
2024-01-17 08:05:46 41
转载 从 Java 迁移到 Go 后的想法
分享看从 Java 迁移到 Go 的人的经验,特别是在后端服务器端项目方面。网友讨论 1我之前在做后端 Java 工作,现在在做后端 Go 工作。构建项目很容易(Go 更容易),易于使用依赖项,并且易于运行测试。IDE 支持很好(Java 更好)。总的来说,我更喜欢Go。但这些语言中的一种并不比另一种具有决定性的优势。我喜欢 Go 的错误处理。我喜欢并不是所有的东西都是一个类。我喜欢函数有多个返回...
2024-01-14 16:19:07 210
protoc使用说明
2018-07-25
sybase数据库
2016-06-06
redis Java驱动
2015-08-14
mongodb工具类
2015-08-12
SSL双向认证证书制作过程流程
2015-08-07
SSHSecureShellClient-3.2.9
2015-05-08
ssdb的java驱动
2015-05-08
redis的java驱动
2015-05-08
数据库工具
2015-05-07
Mongodb底层java驱动框架工具类使用
2014-12-08
关于linux.pdf命令大全
2014-10-31
ssdb的java SDK
2014-10-30
软件设计师历年真题
2014-09-16
hbase权威指南
2014-07-28
《MySQL常用命令汇总》_非常详细
2013-10-27
实现班级的管理,以树形结构展现在jsp页面上
2013-10-26
TA创建的收藏夹 TA关注的收藏夹
TA关注的人