章文嵩(正明)博士和他背后的负载均衡(LOAD BANLANCER)帝国

章文嵩(正明)博士和他背后的负载均衡(LOAD BANLANCER)帝国

案首语 阿里集团技术大牛,@正明,淘宝基础核心软件研发负责人、LVS创始人、阿里云首席科学家章文嵩博士从阿里离职,去追求技术人生另一段历程,让阿里像我一样的很多热爱技术的工程师都有一丝牵动和感触。 个人作为一个平凡的一线技术工程师,对章博士是很敬佩的(虽然他还不认识我),国内IT业界这么多年,在底层基石技术

LVS原理介绍

LVS原理介绍

基于LVS的服务器集群主要由两部分组成,即负载调度器(Load Balancer,简称LB)和真正提供服务的服务器(Real Server,简称RS)。RS对外是不可见的,用户需要通过访问LB来获得服务,所以LB也称为虚拟服务器(Virtual Server),它对外公开的IP称为VIP(Virtual IP)。 LB接收到用户的请求后,会根据设置的转发模式和负载均

机器学习笔记

机器学习笔记

机器学习 Machine Learning 简介 属人工智能(AI). 赋予电脑新能力: 反垃圾邮件 数据挖掘: 网络, 医疗, 生物 无法手工编程: 自动驾驶 (Autonomous) 手写识别 自然语言处理 (NLP) 机器视觉 (Computer Vision) 自助客服: 各种网络服务的推荐系统 帮助理解人类学习和真正智能 定义 无需明确编程, 使电脑能自己学习

从LAMP到框架式开发的SOA:土巴兔8年架构之道

从LAMP到框架式开发的SOA:土巴兔8年架构之道

张华杰,上海交通大学工学硕士,任职土巴兔技术中心技术总监,全面负责土巴兔的技术研发和运维团队。带领团队开发了土巴兔网站、设计本、APP、CRM、呼叫中心等系统。2014 年加入土巴兔,主持并参与了 SOA 基础架构体系、全网多轮高可用加固和性能优化的建设。 关于架构,我认为:架构没有好坏之分,只有合适的才是好的。

OpenStack在小米私有云平台的实践

OpenStack在小米私有云平台的实践

小米OpenStack项目概况 小米目前内部建设的是高可用的私有云平台,为全公司提供统一的云服务平台。提供弹性的资源分配和部署方式,同时提高资源的分配和管理效率。减少服务资源的交付周期。为此小米定了四大目标: 稳定第一:支撑公司多条产品线业务,力求稳定 性能优化:尽快可能的降低虚拟机的资源消耗,保证虚拟机的

应用多级缓存模式支撑海量读服务

应用多级缓存模式支撑海量读服务

原文出处: 张开涛 缓存技术是一个老生常谈的问题,但是它也是解决性能问题的利器,一把瑞士军刀;而且在各种面试过程中或多或少会被问及一些缓存相关的问题,如缓存算法、热点数据与更新缓存、更新缓存与原子性、缓存崩溃与快速恢复等各种与缓存相关的问题。而这些问题中有些问题又是与场景相关,因此如何合理应用缓存来

分布式Unique ID的生成方法一览

分布式Unique ID的生成方法一览

分布式的Unique ID的用途如此广泛,从业务对象Id到日志的TraceId,本文总结了林林总总的各种生成算法。   1. 发号器 我接触的最早的Unique ID,就是Oracle的自增ID。 特点是准连续的自增数字,为什么说是准连续?因为性能考虑,每个Client一次会领20个ID回去慢慢用,用完了再来拿。另一个Client过来,拿的就是另外2

如果有人问你数据库的原理,叫他看这篇文章

如果有人问你数据库的原理,叫他看这篇文章

本文由 伯乐在线 – Panblack 翻译,黄利民 校稿。未经许可,禁止转载! 英文出处:Christophe Kalenzaga。欢迎加入翻译组。 一提到关系型数据库,我禁不住想:有些东西被忽视了。关系型数据库无处不在,而且种类繁多,从小巧实用的 SQLite 到强大的 Teradata 。但很少有文章讲解数据库是如何工作的。你可以自己谷歌

为什么Uber宣布从Postgres切换到MySQL?

为什么Uber宣布从Postgres切换到MySQL?

导读:近期 Uber 宣布将数据库从 Postgres 迁移到 MySQL,在多个技术社区中引起了轩然大波,通过本文我们来详细了解 Uber 做出以上决策背后的原因。 介绍 Uber 的早期架构是由 Python 编写一个单体后端应用程序,使用 Postgres 作为数据持久化。后来 Uber 架构经历一系列显著改变,朝着微服务架构和新的数据平台发展。具

携程实时大数据平台演进:1/3 Storm应用已迁到JStorm

携程实时大数据平台演进:1/3 Storm应用已迁到JStorm

今天给大家分享的是携程在实时数据平台的一些实践,按照时间顺序来分享我们是怎么一步一步构建起这个实时数据平台的,目前有一些什么新的尝试,未来的方向是怎么样的,希望对需要构建实时数据平台的公司和同学有所借鉴。 一、为什么要做实时数据平台 首先先介绍一下背景,为什么我们要做这个数据平台?其实了解携程的业务

缓存更新的套路

缓存更新的套路

看到好些人在写更新缓存数据代码时,先删除缓存,然后再更新数据库 ,而后续的操作会把数据再装载的缓存中。然而,这个是逻辑是错误的 。试想,两个并发操作,一个是更新操作,另一个是查询操作,更新操作删除缓存后,查询操作没有命中缓存,先把老数据读出来后放到缓存中,然后更新操作更新了数据库。于是,在缓存中的数

mysql 修改目录后mysqld启动报错

mysql 修改目录后mysqld启动报错

在一台ubuntu测试机器上启动一个mysql实例,本来应该是一件很简单的事情, 启动的时候却报错了: mysqld_safe --defaults-file=/etc/mysql/my3307.cnf 160218 15:45:13 mysqld_safe Can't log to error log and syslog at the same time. Remove all --log-error configuration options for --syslog to take effect

TOMCAT优化

TOMCAT优化

Tomcat是我们经常使用的 servlet容器之一,甚至很多线上产品都使用 Tomcat充当服务器。而且优化后的Tomcat性能提升显著,本文从以下几方面进行分析优化。 一、内存优化 默认情况下Tomcat的相关内存配置较低,这对于一些大型项目显然是不够用的,这些项目运行就已经耗费了大部分内存空间,何况大规模访问的情况。即使是本

mysql 连接url中useUnicode=true&characterEncoding=UTF-8 的作用

mysql 连接url中useUnicode=true&characterEncoding=UTF-8 的作用

我们在连接mysql数据库的时候一般都会在url后面添加useUnicode=true&characterEncoding=UTF-8 ,但是问什么要添加呢?   添加的作用是:指定字符的编码、解码格式。              例如:mysql数据库用的是gbk编码,而项目数据库用的是utf-8编码。这时候如果添加了useUnicode=true&characterEncodin

Spring框架在数据处理方面的进化史

Spring框架在数据处理方面的进化史

原文:Evolution of the Spring Framework for Data Processing 作者: Smita Srivastava 翻译:孙薇 导言:本文讲述了Spring数据框架在数据处理以及微服务方面的进化史。 定量分析能否成功,在很大程度上要依赖于其收集、存储与处理数据的能力。如果企业决策者能获得及时、可靠的见解分析,那么大数据项目的成功几率就会

MySQL 索引及查询优化

MySQL 索引及查询优化

1. MySQL索引的原理 1.1 索引目的 索引的目的在于提高查询效率,可以类比字典,如果要查“mysql”这个单词,我们肯定需要定位到m字母,然后从下往下找到y字母,再找到剩下的sql。如果没有索引,那么你可能需要把所有单词看一遍才能找到你想要的,如果我想找到m开头的单词呢?或者ze开头的单词呢? 1.2 索引原理 除了词典

程序员最想要的技术,Python 排第四

程序员最想要的技术,Python 排第四

2016年最热门技术,Python 第六 程序员最想要的技术,Python 排第四 全栈工程师最青睐的技术,Python 第九 后端开发者最青睐的技术,Python 排第六 数学 & 数据开发者最最最青睐 Python Stack Overflow 技术趋势 按职位分类看程序员的报酬: 在用 JS 的全栈工程师中,其中同时用 Python 技术的开发者是 85,000

淘宝大秒系统设计详解

淘宝大秒系统设计详解

一些数据 大家还记得2013年的小米秒杀吗?三款小米手机各11万台开卖,走的都是大秒系统,3分钟后成为双十一第一家也是最快破亿的旗舰店。经过日志统计,前端系统双11峰值有效请求约60w以上的QPS ,而后端cache的集群峰值近2000w/s、单机也近30w/s,但到真正的写时流量要小很多了,当时最高下单减库存tps是红米创造,达到

微博的MySQL数据库优化实践经验

微博的MySQL数据库优化实践经验

【编者的话】数据库是所有架构中不可缺少的一环,一旦数据库出现性能问题,那对整个系统都会来带灾难性的后果。并且数据库一旦出现问题,由于数据库天生有状态(分主从)带数据(一般还不小),所以出问题之后的恢复时间一般不太可控,所以,对数据库的优化是需要我们花费很多精力去做的。接下来就给大家介绍一下微博数据

Systemd 入门教程:实战篇

Systemd 入门教程:实战篇

作者: 阮一峰 日期: 2016年3月 8日 上一篇文章,我介绍了 Systemd 的主要命令,今天介绍如何使用它完成一些基本的任务。 一、开机启动 对于那些支持 Systemd 的软件,安装的时候,会自动在/usr/lib/systemd/system目录添加一个配置文件。 如果你想让该软件开机启动,就执行下面的命令(以httpd.service为例)。