• 等级
  • 111863 访问
  • 220 原创
  • 32 转发
  • 39334 排名
  • 18 评论
  • 36 获赞

知乎技术分享:从单机到2000万QPS并发的Redis高性能缓存实践之路

本文来自知乎官方技术团队的“知乎技术专栏”,感谢原作者陈鹏的无私分享。 1、引言 知乎存储平台团队基于开源Redis 组件打造的知乎 Redis 平台,经过不断的研发迭代,目前已经形成了一整套完整自动化运维服务体系,提供很多强大的功能。本文作者陈鹏是该系统的负责人,本次文章深入介绍了该系统的方方面面,值得互联网后端程序员仔细研究。 (本文同步发布于:http://www.52im.net...

2018-09-19 08:39:02

阿里云王牌架构师一问开发者:系统要改造成微服务吗

阿里云高级解决方案架构师 杨旭 世界最大混合云的总架构师,4年前,开始作为双11阿里云技术负责人,负责搭建全球最大的混合云结构,把 “双11”的电商业务和技术场景在阿里云上实现,并保障这个混合云在双11当天能够满足全球客户的购物需求。 正文: 最近大家都在谈微服务,随着越来越多的在线业务需要提供更大并发的scale-up 和 scale out能力,微服务确实提供了比较好分布式服务的解决方案...

2018-08-09 12:34:02

为什么很多人不愿意用hibernate了?

先说hibernate厉害在哪,然后再来说为啥享受hibernate这些便利会有问题。hibernate让你可以不写sql,这不单可以让你的应用更好移植到其他数据库,更主要是让程序员可以更专注与业务逻辑,更关注于数据和数据、对象和对象之间的关系。hibernate对一对多,多对多关系实现的是非常好的。很关键的一点,它支持lazy,可以让你的数据只在需要的时候被load,听起来非常美是不是?hibe...

2018-06-24 11:49:53

MongoDB中的一些坑(最好不要用)

MongoDB 是目前炙手可热的 NoSQL 文档型数据库,它提供的一些特性很棒:如自动 failover 机制,自动 sharding,无模式 schemaless,大部分情况下性能也很棒。但是薄荷在深入使用 MongoDB 过程中,遇到了不少问题,下面总结几个我们遇到的坑。特别申明:我们目前用的 MongoDB 版本是 2.4.10,曾经升级到 MongoDB 2.6.0 版本,问题依然存在,...

2018-05-12 22:54:27

在阿里,我们如何管理代码分支?

引言在阿里内部,流行着许多有意思的工程实践。有些实践通过工具和流程嵌在集团的大环境里,外界不容易复制,有些实践则是流露在大家的日常习惯里,被默默的遵守。比如分支管理这件事,其实属于工具和习惯各占一半,并且颇有阿里特色的成分,适合作为一个例子。阿里有很多的研发团队,不同事业部使用的发布流程、分支策略并非整齐划一,但总体上看是比较规整的。其中有一种主流的发布模式以及对应的分支使用方式,称为“AoneF...

2018-04-14 10:42:59

浅析IO模型

也许很多朋友在学习NIO的时候都会感觉有点吃力,对里面的很多概念都感觉不是那么明朗。在进入Java NIO编程之前,我们今天先来讨论一些比较基础的知识:I/O模型。下面本文先从同步和异步的概念 说起,然后接着阐述了阻塞和非阻塞的区别,接着介绍了阻塞IO和非阻塞IO的区别,然后介绍了同步IO和异步IO的区别,接下来介绍了5种IO模型,最后介绍了两种和高性能IO设计相关的设计模式(Reactor和Pr...

2018-03-23 14:50:53

微博CacheService架构浅析

http://www.infoq.com/cn/articles/weibo-cacheservice-architecture/微博作为国内最大的社交媒体网站之一,每天承载着亿万用户的服务请求,这些请求的背后,需要消耗着巨大的计算、内存、网络、I/O等资源。而且因为微博的产品特性,节假日、热门事件等可能带来突发数倍甚至十几倍的访问峰值,这些都对于支撑微博的底层基础架构提出了比较严苛的要求,需要满...

2018-03-23 14:48:35

ActiveMQ与虚拟通道

郑重提示,本文转载自http://shift-alt-ctrl.iteye.com/blog/2065436   ActiveMQ提供了虚拟通道的特性(Virtual Destination),它允许一个逻辑通道(logical destination)映射成一个或者多个物理通道(physical destination);它可以非常灵活的解决"消息整合"方面的问题,它可以实现:     1...

2018-03-23 14:43:18

RabbitMQ基础概念详细介绍

你是否遇到过两个(多个)系统间需要通过定时任务来同步某些数据?你是否在为异构系统的不同进程间相互调用、通讯的问题而苦恼、挣扎?如果是,那么恭喜你,消息服务让你可以很轻松地解决这些问题。消息服务擅长于解决多系统、异构系统间的数据交换(消息通知/通讯)问题,你也可以把它用于系统间服务的相互调用(RPC)。本文将要介绍的RabbitMQ就是当前最主流的消息中间件之一。RabbitMQ简介AMQP,即Ad...

2018-03-23 14:41:17

数据库建立索引的原则

使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的 值进行排序的一种结构,例如 employee 表的姓(lname)列。如果要按姓查找 特定职员,与必须搜索表中的所有行相比,索引会帮助您更快地获得该信息。         索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列值的集 合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。        索引提供指向存储...

2018-03-23 14:37:34

Mac mongodb

mongodb启动     bin/mongod    -----    waiting for connections on port 27017  表示等待连接即可以通过客户端(Robomongo)或程序连接了mongo shell     bin/mongo localhost:~ javahongxi$ cd soft/mongodb-2.4.6/localhost:mongodb-2.4...

2018-03-23 14:33:37

Mac OS终端提示符前缀”bogon”

像往常一样新打开一个终端,却发现一个很有意思的现象,以前的提示符的组成为:[机器名]:~[用户名]以前:YangGavin’s MacBook Pro:~ yanggavin$现在:bogon:~ yanggavin$最麻烦的是我本地用IDEA调试web应用,控制台会提示下面错误:Error: Exception thrown by the agent : java.net.MalformedUR...

2018-03-23 14:23:31

分布式事务综述(XA, TCC)

https://mp.weixin.qq.com/s?__biz=MzUzMzU5Mjc1Nw==&mid=2247483681&idx=1&sn=05845495c5ef33683addd98fffc72106&chksm=faa0eefbcdd767edbf46cea6f223b426e276dd4d9b19cce64f59387590818f5e4eb96c7...

2018-03-23 14:05:16

分布式事务简单处理

解决分布式事务最简单的方案就是向前或向后,即补充或回滚。业务逻辑有如下三步:调用A服务冻结金额调用B服务增加额度记录数据库进行到第2步失败 -> 写task,回滚第1步(通知A服务方去回滚)进行到第3步失败 -> 写task,从A/B服务处同步数据至数据库还有一种方案就是写task,转化为本地事务,由task去执行上述三步,失败则重试task,当然,A/B服务都有幂等性处理。这种方案的...

2018-03-09 18:10:34

支付宝分布式事务服务DTS

分布式事务服务 DTS二如何玩转 DTS,基本上使用 DTS 对发起方的配置要求会多一点。添加 DTS 的依赖NOTE: 发起方和参与方都需要添加依赖。如果使用 SOFA Lite,只需按照样例工程里的方式添加依赖:<dependency> <groupId>com.alipay.sofa</groupId> <artifactId>...

2018-03-09 18:09:03

Spring之@Configuration配置解析

 1.简单的示例: @Configuration 2 @EnableConfigurationProperties({DemoProperties.class}) 3 public class DemoConfiguration { 4 5 @Bean 6 public Book getBook(){ 7 return new Book(); 8 } 9...

2018-03-09 18:08:12

Maven生成可以直接运行的jar包的多种方式

转自 http://blog.csdn.net/xiao__gui/article/details/47341385    Maven可以使用mvn package指令对项目进行打包,如果使用java -jar xxx.jar执行运行jar文件,会出现"no main manifest attribute, in xxx.jar"(没有设置Main-Class)、ClassNotFoundEx...

2018-03-09 18:07:15

Gradle Installation

InstallationHelpful InformationInstallInstall with a package managerInstall manuallyUpgrade with the Gradle WrapperOlder ReleasesHelpful InformationYou can sign up for free live training with a Gradle...

2018-03-09 18:06:26

Gradle 完整指南(Android)

�本文谢绝转载,非要转载,请注明出处http://www.jianshu.com/p/9df3c3b6067a前言为什么需要学Gradle?Gradle 是 Android 现在主流的编译工具,虽然在Gradle 出现之前和之后都有对应更快的编译工具出现,但是 Gradle 的优势就在于它是亲儿子,Gradle 确实比较慢,这和它的编译过程有关,但是现在的Gradle 编译速度已经有了成倍提高。除...

2018-03-09 18:05:40

Gradle在大型Java项目上的应用

在Java构建工具的世界里,先有了Ant,然后有了Maven。Maven的CoC[1]、依赖管理以及项目构建规则重用性等特点,让Maven几乎成为Java构建工具的事实标准。然而,冗余的依赖管理配置、复杂并且难以扩展的构建生命周期,都成为使用Maven的困扰。Gradle作为新的构建工具,获得了2010 Springy大奖,并入围了2011的Jax最佳Java技术发明奖。它是基于Groovy语言的...

2018-03-09 18:04:29

javahongxi

Java生态研究 hongxi.org
关注
  • 互联网·电子商务/Java工程师
  • 中国 北京 昌平区
奖章
  • 持之以恒