调查:最受欢迎的和快要死了的Web框架

1290 2 15K
React.js和Vue.js是最受欢迎的、而Drupal和JQuery是要死了的。.

从消费者角度比较Kafka 与 RabbitMQ - OpenCredo

1078 1 7K
对于大型分布式系统,Kafka 往往是更好的选择。它可以更有效地横向扩展,为更大的场景实现更好的吞吐量,包括消费者离线和不可用时。RabbitMQ 非常适合具有较低延迟要求的系统,消费者可以跟上消息的.

Yelp如何重新架构其大规模大型的服务器端渲染?

862 1 5K
在 Yelp,我们使用服务器端渲染 (SSR) 来提高基于 React 的前端页面的性能。在 2021 年初发生一系列生产事件后,我们意识到我们现有的 SSR 系统无法扩展,因为我们将更多页面从基于 .

有了OO、分层、DI、AOP、TDD和Refector,DDD不再是空谈

18 6104 1 2K
一晃眼搞了7、8年的企业应用管理和研究,各种技术、思想翻来覆去折腾了很久,最近总算是有点持拨云见目的感觉了,于是放出点大标题和各位论论道。主要观点其实在一年半前,已经在jdon首发的文章“坚持发扬EJ.

Oracle开始启动Java版本许可证的跟踪审查 - theregister

840 1
甲骨文公司已开始将Java纳入其软件许可审计,旨在抓住不合规的边缘客户和其他客户。2021年9月,当甲骨文发布Java 17时,它开始提供不收费的许可证,并在三年内免费提供季度更新--但只针对该迭代;.

幽默:新年愿望

268
.

为什么我们要研究Hibernate ?

59 8223 1
最近论坛上关于Hibernate的帖子很多,发表一下我的看法。过去,MySQL火爆异常,那段时间,我也盲目的跟着研究了一把MySQL。可是,直到今天,我再也没有用到过MySQL。仔细想一下,无非两个原.

rockscache:保证与DB最终或强一致性的Redis缓存库

257 11K
随着缓存的引入,分布式系统中的一致性问题出现了,因为数据同时存储在两个地方:数据库和Redis。到目前为止,我们看到的所有缓存解决方案,如果没有在应用程序级别引入版本控制,都无法解决数据不一致场景。目.

无服务器架构 - CodeCraft

1289 2
要定义无服务器架构(以下称SA),请考虑它不是什么。SA并不意味着没有物理基础设施或机器。SA实际上是一个从企业角度来看的术语。建立后端基础设施需要时间和持续维护。设置物理机或虚拟设备,安装应用程序,.

使用混沌候攻击测试Spring Boot应用

2262 1 3K
在编写了许多单元和集成测试后,代码覆盖范围从70%到80%,但是还是存在一种焦虑,我们的宝宝在生产中的表现如何?许多问题仍然没有答案:1. 我们的后备工作会起作用吗?2. 应用程序如何处理网络延迟?3.

GitHub上一个功能齐全的币安交易机器人

357
币安波动率交易机器人 它采用以下逻辑进行交易 - 扫描过去 5 分钟内涨幅超过 3% 的任何币种 - 买入 100 USDT 波动最大的币种 - 以 6% 的利润或 3% 的止损卖出 币安交易机器人分.

Java中检查字符串是否Base64编码的2种方法

148 2K
在Java编程中,我们经常涉及数据编码和解码。此外,Base64 编码很流行,用于将二进制数据转换为ASCII文本格式。Base64编码是什么Base64 是一种二进制到文本的编码方案,可将二进制数据.

软件Bug、耦合以及因果推理 - Michael Feathers

1674 1
当你思考是否“是A引起C”?然后您意识到是A导致B然后导致C”,然后又会想到“也许A和B引起C”,然后您看到一个模糊轮廓,并想知道这个隐藏的轮廓是否在A,B和C存在之前就已经存在了。众说纷纭:系统思考.

使用Java新的模式切换替代访问者模式 - nipafx

1119 1 9K
在现代 Java 中,不再需要访问者模式。使用现代 Java 语言功能的模式匹配的密封(Sealed)类型和切换((Pattern Switches))可以用更少的代码和更少的复杂性实现相同的目标。访.

当"软件定义芯片"遭遇"自由软件"时 - lwn

873 1
自由软件的价值在于它能够让我们实际拥有并保持对我们系统的控制,自由驱动程序往往可以解锁其供应商可能认为不适合提供的硬件功能。不过,英特尔即将推出的 "软件定义硅"(SDSi)机制可能会减少这种控制,因.

谁能写个“新闻发布系统”的面向对象分析和设计的过程?

21 4677 2
请大家谈谈,拿到这样一个系统,是怎么进行分析和设计的?怎么处理类与类之间的层次,和通信。比如把新闻发布系统分为话题:注册登陆、新闻发布、权限管理。在“注册登陆”系统中怎么分析?其中有表单类,那么新填写.

Rust中将数组转为集合类型的简单方法

1185
通常使用.iter().collect()方法,但是更复杂,简单办法:使用[value].into()let a: std::collections::HashSet<_> = [true].into.

思考工具之生产性思维模型 | Untools

1511 3K
创造性地、高效地解决问题。通过应用更多的结构化和批判性思维,你可以更好地理解手头的问题,并想出更多创造性的解决方案。由Tim Hurson创建的 "高效思考模型 "可以帮助你做到这一点。它最适合在问题.

用于微服务开发的 Java 框架

100 4K
本文列出了一些用 Java 构建微服务的流行框架:Spring Boot:Spring Boot可以说是用 Java 构建微服务的最流行的框架。它提供了一个全面的生态系统,用于以最少的配置开发独立的、.

Mel Conway:同理心和系统思维

1100
为什么深具同理心共情的人性(情商)和系统思维(智商)很难在同一个人身上共存?我把这部分归因于教育系统:文理分科造成的两种文化:科学和人文科学已经分裂为“两种文化”,这种分裂是解决世界问题的主要障碍。“.

CasaOne工程经验:我们是如何设计领域事件的? - Deepak

1163 1 5K
在分布式系统中,事件在解耦系统的不同组件方面起着重要作用。在本文中,我们讨论如何改进领域事件的设计以解决系统中的多个问题。 上下文CasaOne租赁平台由围绕其自己的有界上下文构建的多个服务组成。去年.

Suno AI:使用文本提示制作音乐

63 3K
您是否曾经想创作自己的音乐,但不知道如何演奏乐器或阅读音符?好吧,Suno AI 让您只需输入您的想法和创意即可创作音乐。最好的部分是您根本不需要了解任何音乐知识。 Suno AI 处理制作旋律、节奏.

识别不必要的复杂性是软件开发中最重要的技能之一

1294 2
什么是复杂性?如何识别?是不是无为就不会造成复杂性?有些复杂性是过早设计带入,但是有些复杂性是因为没有及时识别与意识到,造成更大的复杂性!如同自己绕毛线,绕得越多,自己被扰进去了!识别到复杂性,然后将.

InfoQ: 创建RESTful服务,有GET和POST足矣?

2 2748 3
InfoQ: 创建RESTful服务,有GET和POST足矣?.

闲话DDD使用情况

1856 2
无意中看到2007年一篇有关SOA分布式事务的英文:Distributed Transaction Management in SOA-based System Integration,其中有一个中国.

本周Github上有趣的11个项目

228 5K
本周Github上有趣的项目:1、AI 网关速度极快的 AI 网关。通过 1 个快速且友好的 API 升读 100 多个大模型。Portkey 的 AI 网关是您的应用程序和托管 LLM 之间的接口。.

Bob大叔和Casey讨论整洁代码:性能与设计的平衡

912 9K
我从你那里看到的关于清洁代码的大多数解释包括我在视频中提到的所有事情:喜欢继承层次结构而不是if/switch语句,不暴露内部("德墨忒尔法则 Law of Demeter"),等等。但听起来你听到我.

让Postgres快30%的方法

697 26K
任何一个大规模运行Postgres的人都知道,性能是有代价的。典型的玩法是在数据库前放置一个像PgBouncer这样的池子,并打开事务模式。这使得多个客户端可以重复使用同一个服务器连接,这使得成千上万.

Big Data 辩论: HBase会统治NoSQL世界吗?

1 2838 2
Big Data Debate: Will HBase Dominate NoSQL? - Software - EnterpriseHBase 是Google BigTable模型的成功典范,也是世.