深圳幻海软件技术有限公司 欢迎您!

  • 阿里云数据库负责人李飞飞当选2022年度中国计算机学会CCF会士

    11月25日消息,日前中国计算机学会CCF正式公布2022年度CCF会士名单,阿里巴巴集团副总裁、阿里云数据库产品事业部负责人李飞飞等9位CCF杰出会员当选CCF会士,这也是CCF会员的最高学术荣誉。中国计算机学会CCF成立于1962年,是最具影响力的国家一级学会之一。CCF从2008年起设立会士制

  • 阿里云数据库NL2SQL技术获国际权威评测第一名

    日前,阿里云数据库参加耶鲁大学Spider数据集评测,以78分的成绩排名榜单第一。这一成绩证明了阿里云数据库在NL2SQL技术上的国际领先性。据了解,Spider是业界公认的大规模跨领域复杂NL2SQL转换效果的评测榜单。   NL2SQL(NaturalLanguag

  • 用 WebFlux 写个 CURD 是什么体验?

    WebFlux最为人所诟病的是数据库的支持问题,毕竟数据是一个应用的生命,我们接触的大部分应用程序都是有数据库的,而WebFlux在这一方面的支持行一直比较弱,这也是大家总是吐槽它的原因。不过从Spring5开始,这一问题得到了一定程度的缓解。Spring官方在Spring5发布了响应式Web框架S

  • 变更数据捕获:爱彼迎、网飞和优步的关键环节

    ​译者|布加迪审校|孙淑娟现代数据堆栈(MDS)是数字颠覆者的基础。不妨以网飞(Netflix)为例。该公司开创了一种基于视频即服务的新商业模式,但其成功主要立足于实时流数据。网飞在使用分析工具向观众推送高度相关的推荐内容。它监控实时数据,对网络性能保持持续可见性。它在同步影片和节目数据库,Elas

  • 微服务真的不挑数据库吗?如何选择?

    微服务架构的应用具有很好的扩展性,因此似乎微服务并不挑数据库,在微服务中使用哪种数据库问题都不是很大。事实真的如此吗?也许对于一些研发能力很强的队伍来说,为微服务选择数据库是很容易的事情,因为选择的数据库无论存在哪方面的缺陷,他们都有办法通过应用方面的优化去解决它。而对于一些普通的研发队伍来说,有时

  • GitLab在CockroachDB和YugabyteDB上的兼容性对比之系统初始化

    一、测试背景GitLab是一款在全球范围内都非常流行的源代码管理工具,早期的版本当中用户可以选择使用MySQL或PostgreSQL两种数据库,但是从12.1.0版本开始官方就完全放弃了对MySQL的支持。GitLab新版本中很多功能都基于PostgreSQL的特性开发,它是众多使用了Postgre

  • Nacos在企业中如何使用集群环境?

    前言在公司,注册中心和配置中心都是使用的Nacos,因为前一段时间比较忙(木有划水时间),也没有精力仔细去研究,但是时间就像海绵里的水,挤一挤总会是有的,出于对技术的好奇心,今天终于到了我牧汉三出马了。就说一说Nacos集群架构是如何搭配。Nacos集群架构在搭建Nacos集群之前,我们首先要了解一

  • 过度设计是罪恶的!

    软件开发的哪个阶段最容易招人喷?如果你严格按照什么瀑布模式、敏捷模式开发的话,你会发现永远是概要设计的评审阶段。这个时候,虽然还没有成为既定的事实。多位理想主义达人,就会搬出各种规则、规范,来给你的方案下套子。他们是为了你的方案更好么?大多数情况未必。有的人,多说几句是为了凸显自己的价值;有的人是刚

  • Java多线程并发数据错乱了,接口幂等性如何设计?

    业务背景今天给大家聊聊线上系统的接口幂等问题,以及如何通过分布式锁来保障接口的幂等性,同时会给大家分享一下我们在基于分布式锁实现接口幂等性的时候,一些生产实践经验的积累。首先给大家说说,假如说要是我们线上系统的核心接口要是没有幂等性保障机制的话,可能会出现什么情况?其实非常简单,假设你有一个系统,他

  • 基于Redis分布式BitMap的应用

    一、序言在实际开发中常常遇到如下需求:判断当前元素是否存在于已知的集合中,将已知集合中的元素维护一个HashSet,使用时只需耗时O(1)的时间复杂度便可判断出结果,Java内部或者Redis均提供相应的数据结构。使用此种方式除了占用内存空间外,几乎没有其它缺点。当数据量达到亿级别时,内存空间的占用

  • 再谈分布式事务,你了解多少?

    前言三年前,我写了第一篇和分布式事务相关的文章再有人问你分布式事务,把这篇扔给他,后面陆续也写了一些和分布式事务相关的文章:如何能在实战中完成分布式事务深度剖析一站式分布式事务方案Seata-Server深度剖析一站式分布式事务方案Seata-Cient解密分布式事务框架-Fescar时隔三年,回看

  • 穿透类缓存Cache使用,这一篇就够了!

    有些成熟的技术方案,用不着创新,固化下来的模式(pattern),学就完了。例如,穿透类缓存的使用,“CacheAsidePattern”就是很好的实践沉淀,故今天聊一聊CacheAsidePattern。画外音:就好像“设计模式”,它就是沉淀下来的设计方法。什么是“CacheAsidePatter

  • 后端程序员必备:分布式事务基础篇

    前言最近看了几篇有关于分布式事务的博文,做一下笔记。哈哈~数据库事务数据库事务(简称:事务),是数据库管理系统执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成,这些操作要么全部执行,要么全部不执行,是一个不可分割的工作单位。数据库事务的几个典型特性:原子性(Atomicity)、一致性(Co

  • What?老板让我开发一个亿级流量的大型网站

    我们常见的大型网站,如百度、淘宝、京东等,都是一个分布式系统。这么复杂的系统也不是一天建成的,每个系统都经历了漫长的演变过程。图片来自Pexels 对于一个大型网站,主要有以下几个特征:支撑海量数据非常高的访问量在大型网站中,其最核心的功能就是计算和存储。因此系统演变过程也主要围绕这两点进

  • 浅谈订单号生成的设计方案

    今天讨论分享下订单号生成的简单实现方案,为实际场景中需要用到订单号生成服务提供解决思路。最简单的方式基于数据库auto_increment_increment来获取ID。首先在数据库中创建一张sequence表,其中seq_name用以区分不同业务标识,从而实现支持多种业务场景下的自增ID,curr

  • Java技术干货分享:浅谈订单号生成设计方案

     简单的方式基于数据库auto_increment_increment来获取ID。首先在数据库中创建一张sequence表,其中seq_name用以区分不同业务标识,从而实现支持多种业务场景下的自增ID,current_value为当前值,_increment为步长,可支持分布式数据库的哈

  • 数据库软件架构,到底要设计些什么?

    一、基本概念概念一:单库概念二:分片分片解决“数据量太大”这一问题,也就是通常说的“水平切分”。一旦引入分片,势必面临“数据路由”的新问题,数据到底要访问哪个库。路由规则通常有3种方法:(1)范围:range优点:简单,容易扩展。缺点:各库压力不均(新号段更活跃)。(2)哈希:hash优点:简单,数

  • 掌握这十个编程项目,让你的简历含金量暴涨

     学习编程时常见的一个问题是:设计程序时,什么样的想法算是好的?如今,大家会经常听到一些陈词滥调式的答案,如:“做个象棋游戏”或者“命令行界面”,这些答案确实没错,但它们没有适应现代编程的需求。现代软件很大一部分是SaaS和web应用。这意味着你需要了解在线编程。编写拥有用户的网站或者应用

  • 大型Web网站架构演变之9大阶段

     前言我们以JavaWeb为例,来搭建一个简单的电商系统,看看这个系统可以如何一步步演变。该系统具备的功能:用户模块:用户注册和管理商品模块:商品展示和管理交易模块:创建交易和管理正文阶段一、单机构建网站网站的初期,我们经常会在单机上跑我们所有的程序和软件。此时我们使用一个容器,如Tomc

  • 缓存这匹“野马”,你驾驭得了吗?

    在之前的文章《你应该知道的缓存进化史》中介绍了爱奇艺的缓存架构和缓存的进化历史。【51CTO.com原创稿件】俗话说得好,工欲善其事,必先利其器,有了好的工具肯定得知道如何用好这些工具,本篇将分为如下几个方面介绍如何利用好缓存:你真的需要缓存吗如何选择合适的缓存多级缓存缓存更新缓存挖坑三剑客缓存污染

推荐阅读