文档章节

阿里架构视频整理记录

l
 lizhi.zero
发布于 2016/03/19 11:35
字数 964
阅读 19
收藏 0

问答:一个数据库连接数量过多怎么办?连接池的缺点?

如果每一个app都有连接池,最小连接为8,最大为10,随机访问,每一个app的连接并不能保证访问是平均的,有些app很多连接浪费。解决办法就是在应用和数据库之间加一层:1.100app +3台中间数据库连接服务(代理模式)+数据库,2.连接复用。提升连接的利用率。

讨论方案1到底是重还是轻。

一个大业务或者系统会造成冲突-->拆成一个一个的小模块,由单独团队负责,减少冲突和拆解业务,这个时候如果模块能够单独开发和部署(能轻量开发,减少冲突,连接减少)。高内聚,低耦合。这个时候就要做服务化。

服务化的发展:怎样知道服务,有哪些服务?

                        DNS的原理可以解决这个问题但是不能很快感知IP地址的变化(DNS定时主动拉取)。

                        软负载:nameserver 后面服务机器和他保持长连接,很快感知后面服务的IP是否可用

                        这个时候要解决nameserver单点的问题(解决方法:1.nameserver热备,2把服务IP缓存到webapp端)

                         nameserver什么时候会起作用?服务的上线和服务的下线才会用到。

                         nameserver集群变大会使集群的同步状态变的很难维护(服务不可用的时候,IP下架的时候)。

                         nameserver使用缓存,一个点写数据,多个点读数据 (主备节点,对等集群分担读的压力)诞生了configserver(实现方式是zk。发布订阅模式都可以实现)

服务化具体的方案:使用configserver的hsf、dubbo,这些远程服务调用RPC都是基于接口和序列化

                                consumer和provider。创新性的东西配置服务--远程调用配置成本地调用。

分布式数据库分层:tddl针对mysql实现切分和扩展,分库分表(sharding)。分布式jion和分布式事务(可以再开一个博客)

                              高级事务支付宝的账务事务是用的异步事务(事务的本质就是锁)。

                                次异步的事务使用单机保证,写都在一台机器上。

请求的分散治理:负载均衡 ,所有系统都可以扩展

内容分发网络:cdn  是什么,对cdn有什么改进?软硬件结合(低功率,低损耗)硬件的东西

搜索引擎:倒排索引+缓存系统 ,倒排索引是什么?索引词典+倒排列表  可以看开源软件

                 压缩,个性化搜索(推荐),快速试错,理解语义拟人化。           

数据分析:用户,交易订单等等数据放到一起,一起分析

                hadoop 1.0----2.0 storm ----spark

存储NOSQL:列存储可以使用较高效率的压缩算法。更新的时候比较差劲了(怎样绕开呢,删除的时候不是真的删除,解压缩是要耗时耗资源的)。

最后的架构图

一个单机的web服务的优化:


 http服务器(nginx,nginx的高效使用openresty),jvm最大的问题就是gc,如果内存很大且不能回收,比如类目树。协程更轻量级的线程,一个线程内维护自己多个任务。线程切换很耗时好资源,线程A挂起保存线程状态,线B读取在运行。

JVM优化:gc优化,协程,gc算法,即时编译优化,定制功能增强。


好啦其实后面还有30分钟但是我觉得还是太粗糙了,下一篇博客,架构模式与实践漫谈的总结报告。

© 著作权归作者所有

共有 人打赏支持
l
粉丝 1
博文 16
码字总数 4859
作品 0
私信 提问
【资料合集】阿里巴巴开源技术汇总——内含115个软件与100+技术文档、PDF下载

乔川 2017-08-15 14:24:39 浏览9529 评论3 发表于: 云栖社区官方团队 >> 社区精选文章集 云栖社区 分布式 大数据 HTTPS 开源 阿里巴巴 aliyun 阿里开源 摘要: 为了更好地让开发者们深入了解...

姬子玉
2017/11/28
0
0
数据中台,让传统零售向新零售进一步迈进

摘要:2018云栖大会上海峰会数据中台专场上,联华华商信息中心总监陈杭从传统超市零售门店转型至新零售角度,介绍了联华华商和阿里云之间的数据中台合作。企业效益从高速增长到滞增甚至下滑,...

1993wang
2018/06/24
0
0
视频监控业务上云方案解析

行业痛点 由于视频监控能最大的记录和还原当被监控的场景,近年来,视频监控逐步从专业领域的应用普及到了各个民用、家用领域,各个摄像相机厂家也纷纷推出各种型号的摄像机和解决方案。由于...

little09
2017/12/22
0
0
300+篇运维、数据库等实战资料免费下载(文章+PDF+视频,持续更新)

乔川 2017-07-18 07:33:24 浏览60259 评论14 发表于: 云栖社区官方团队 >> 社区精选文章集 大数据 阿里云 函数 加密 云栖大会 阿里巴巴 SaaS 数据中心 摘要: 2017年已过去一半,在此小编为...

姬子玉
2017/11/28
0
0
阿里云Redis混合存储典型场景:如何轻松搭建视频直播间系统

本文主要介绍视频直播间系统,以及如何使用阿里云Redis混合存储实例方便快捷的构建大数据量,低延迟的视频直播间服务。 背景 视频直播间作为直播系统对外的表现形式,在整个系统中处于核心地...

怀听
2018/04/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

租房软件隐私保护如同虚设

近日,苏州市民赵先生向江苏新闻广播新闻热线025-84658888反映,他在“安居客”手机应用软件上浏览二手房信息,并且使用该软件自动生成的虚拟号码向当地一家中介公司进行咨询。可电话刚挂不久...

linux-tao
今天
1
0
分布式项目(五)iot-pgsql

书接上回,在Mapping server中,我们已经把数据都整理好了,现在利用postgresql存储历史数据。 iot-pgsql 构建iot-pgsql模块,这里我们写数据库为了性能考虑不在使用mybatis,换成spring jd...

lelinked
今天
4
0
一文分析java基础面试题中易出错考点

前言 这篇文章主要针对的是笔试题中出现的通过查看代码执行结果选择正确答案题材。 正式进入题目内容: 1、(单选题)下面代码的输出结果是什么? public class Base { private Strin...

一看就喷亏的小猿
今天
2
0
cocoapods 用法

cocoapods install pod install 更新本地已经install的仓库 更新所有的仓库 pod update --verbose --no-repo-update 更新制定的仓库 pod update ** --verbose --no-repo-update...

HOrange
今天
3
0
linux下socket编程实现一个服务器连接多个客户端

使用socekt通信一般步骤 1)服务器端:socker()建立套接字,绑定(bind)并监听(listen),用accept()等待客户端连接。 2)客户端:socker()建立套接字,连接(connect)服务器,连接上后...

shzwork
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部