印度游戏平台Dream11如何伸缩扩展他们的游戏中台?

1049 1 3K
获得腾讯投资的Dream11平台可以让用户创建由真实玩家组成的虚拟团队,并允许他们根据实际游戏中玩家的数据表现来组织比赛。获奖者将获得积分奖励,每场比赛都有参赛费。该平台提供梦幻板球、足球、卡巴迪和N.

如果Twitter能实现付款将如何?

1075 3K
伊隆马斯克将“支付”作为其战略的关键部分作为空白页。Simon Taylor对这个“假设”进行详细推理,这是一个很好的案例研究,详细阐述了基础设施、货币化和用户体验。如果 Twitter 依靠产品最初.

SQL已死? - thenewstack

1533 1
SQL可能已有46年的历史了,但是仍然可以完成工作。截至2020年,SQL已经将近半个世纪的统治。这是一个可靠、易于使用(当然非常熟悉)的可靠解决方案。正如知道并喜欢它的分析人员和数据库开发人员的队伍.

什么是 PageRank 算法?

969 2K
谷歌创始人拉里佩奇和谢尔盖布林需要一种算法来对页面进行排名并为用户提供最佳搜索结果:PageRank算法。使用 PageRank 算法,每个页面都会根据链接到它的其他页面的数量和重要性获得排名。页面排.

Spring框架和Spring boot有啥区别?

2218 1 5K
首先看看Spring, 它是一个IOC框架,或者称依赖注入DI框架,又是一个AOP框架。这里就不多讲这些特性了,spring框架还有更多其他特性,有二十个模块,能解决很多问题:Spring JDBCS.

结合Hazelcast和Spring的分布式缓存 - reflectoring

3002 9K
在某些应用程序中,我们需要保护数据库或避免进行成本高昂的计算。我们可以为此目的使用缓存。本文展示了如何在分布式可伸缩应用程序中将Hazelcast用作Spring的缓存。本文随附GitHub上的工作代.

什么是不确认偏见?

985
不确认偏见,也称为失证偏差或认知失调(Disconfirmation Bias):不加批判地只接受那些支持自己信念的证据与信息,而积极地反驳那些挑战自己信念的其他证据。当证据或外部信息使我们高兴时就不.

Python中表达式Expressions简介

131 1 3K
Expressions 是一个轻量级算术表达式解析器,用于创建简单的算术表达式编译器。目标是提供最小且易于理解的接口来处理相同语法但略有不同方言的算术表达式(见下文)。该框架将保持轻量级,并且不太可能.

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

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

如何快速高效的完成一个3层架构的应用系统的开发

40 5373 2
现在3层架构的应用的需求越来越多。我个人认为利用java技术去实现这方面的应用是最好的。但是目前java也没有一个很好的工具去实现这方面的应用。(应该讲是快速的实现这方面的实际应用)不管如何,开发人员.

本周Github有趣的项目、工具和库:Crux等

228 1
有趣的项目、工具和库Crux使用 Rust 开发跨平台应用程序。基本的架构概念是将纯计算任务与引起副作用的任务严格分离。这与Elm 的工作方式类似。Carton从任何编程语言运行任何 ML 模型。Ca.

从Swift语言看ORM的定位错误

5 3825 1
Swift提供了数据结构struct和类Class两种, 数据结构和类一样支持行为,包括方法和初始化,数据结构和类的重要区别是:数据结构按复制方式传递,当你将一个数据结构传递给另外一个变量时,实际是复.

DDD战略设计中的Wardley Mapping是什么?来自于孙子兵法的天时地利人和等五要素

3250
著名DDD战略设计专家Nick Tune非常推崇Wardley Mapping,在使用DDD等方法实现社会技术架构和团队管理:你的经理还用拍脑袋划分团队吗?一文中认为:具有上下文映射的战略性领域驱动设.

类似SpringCloud的vlingo平台是一套事件驱动的微服务工具

2058 1 4K
使用开源(OSS)vlingo/platform实现分布式,并发,被动,事件驱动和微服务架构的简化。与领域驱动设计一起,这是商业战略和现代技术相遇的十字路口。这意味着当您构建有界上下文时,vlingo.

DDD当前工程方法组合 - Kamil

1026 1
当前项目组合:EventStorming BP/PL(领域探索)+用户故事映射(故事发现、确定优先级、划分为更小的故事)+ BDD(规范)+ EventStorming DL(设计)+ BDD/TDD.

REST:使用PATCH进行部分更新 - mscharhag

2446 6K
在开始之前,让我们快速检查一下为什么部分更新有用的原因: 简单性-如果客户端只想更新一个字段,则部分更新请求可能更易于实现。 带宽-如果您的资源表示量很大,则部分更新可以减少所需的带宽量。 更新丢失-.

Angular.js视频详解 入门02

1235 5
点击标题进入.

Rust 语言学习之旅(3)

1239 6K
字符串常量(String Literals)字符串常量(String Literals)采用 Unicode 编码(注:下文提及的 utf-8 为 Unicode 的一部分)。字符串常量的类型为 &'.

Swift开发开源框架Katana

1434 3
Katana是一个用于编写iOS应用程序的现代Swift框架,灵感来自React和Redux:1.逻辑:应用程序状态完全由单个可序列化数据结构描述,并且更改状态的唯一方法是调度操作action。动作a.

业务逻辑从单片整体架构到微服务再到函数的演变

1850 2 4K
在过去十年中技术不断发展,我们看到了应用程序从单片monolithic到微服务的演进,现在看到AWS Lambda领导的函数驱动的无服务器Serverless事件的兴起。 什么因素推动了这种演变?从技.

幽默:好的代码本身就是最好的文档 - CodeWisdom

1243 1
好的代码本身就是最好的文档。在您要添加注释文档时,问问自己:“如何改进代码,以便不需要这些注释文档?” 改进代码,然后对其进行记录以使其更加清晰。 - Steve McConnell 众说纷纭:我猜这.

小巧易于使用的有磁盘支持的ArrayList -Bozho的技术博客

1689 1
有时,列表List可能会变得太大而无法容纳在内存中,因此您必须采取一些措施以避免内存不足。做到这一点的正确方法是流传输–而不是将所有内容都放入内存中,您应该从源流传输数据并丢弃已经处理的条目。但是,在.

新的Java JIT编译器Graal简介

4205 4K
在本教程中,我们将深入研究名为Graal的新Java实时(JIT)编译器。让我们首先解释JIT编译器的作用。当我们编译Java程序时(例如,使用  javac命令),我们最终将源代码编译成代码的二进制.

Apache Camel 路由简介

1269 2K
在这篇博客中,我们介绍使用 Apache Camel 框架进行面向消息开发的几个关键要素。它使开发人员能够集成多种技术并与各种端点(例如文件、队列和外部服务)进行数据通信,同时易于使用。介绍Apach.

微服务及其设计模式

968 2K
微服务是一种架构风格,用于开发作为单独服务运行的软件应用程序,这些服务通过以下方式相互通信使用 API 调用的同步通信通过发布和订阅/基于事件的机制进行异步通信——即使用消息队列这些微服务具有以下属性.

covrom/redispubsub:Redis Streams的发布订阅驱动程序

1111
Go语言·的package pubsub 提供了一种简单且可移植的方式来与发布/订阅系统进行交互。这个项目驱动是基于pubsub的Redis 驱动程序,使用 Redis Streams,此驱动程序支持.

解决方案架构师如何思考?| Anuar

936 11K
当我还是一名日日夜夜编写源代码的开发人员时,我对架构以及解决方案架构师在设计系统时所做的事情有一个了解。它是关于根据一些模式和最佳方法设计源代码,搜索新组件以及现有组件的更改。但是我的方法太像开发人员.

请不要设定目标!而是专注于系统 - jamesclear

1047 1 2K
如果你想要更好的结果,那就忘记设定目标吧。而是专注于您的系统。实现我们想要的生活的最佳方式:如塑造更好的身材、建立成功的企业、更多地放松和减少担心、花更多的时间与朋友和家人在一起等,就是要设定具体的、.