摘要: 架构演变第一步:物理分离WebServer和数据库 最开始,由于某些想法,于是在互联网上搭建了一个网站,这个时候甚至有可能主机都是租借的,但由于这篇文章我们只关注架构的演变历程,因此就假设这个时候已经是托管了一台主机,并且有一定的带宽了。这个时候由于网站具备了一定的特色,吸引了部分人访问,逐渐你发现 阅读全文
posted @ 2017-05-04 22:16 疯狂的果子 阅读(694) 评论(1) 推荐(2) 编辑
摘要: 点击链接加入群【.NET大型网站架构】433685124QQ群 阅读全文
posted @ 2017-05-04 22:12 疯狂的果子 阅读(519) 评论(0) 推荐(0) 编辑
摘要: CDN缓存 CDN主要解决将数据缓存到离用户最近的位置,一般缓存静态资源文件(页面,脚本,图片,视频,文件等)。国内网络异常复杂,跨运营商的网络访问会很慢。为了解决跨运营商或各地用户访问问题,可以在重要的城市,部署CDN应用。使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。 CN 阅读全文
posted @ 2017-05-04 22:08 疯狂的果子 阅读(916) 评论(0) 推荐(0) 编辑
摘要: ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。Zookeeper是hadoop的一个子项目,其发展历程无需赘述。在分布式应用中,由于工程师不能很好地使用锁机制,以及基于消息的协调机制不适合在某些 阅读全文
posted @ 2017-05-04 21:59 疯狂的果子 阅读(4600) 评论(0) 推荐(0) 编辑
摘要: 1. ETCD是什么 ETCD是用于共享配置和服务发现的分布式,一致性的KV存储系统。该项目目前最新稳定版本为2.3.0. 具体信息请参考[项目首页]和[Github]。ETCD是CoreOS公司发起的一个开源项目,授权协议为Apache。 提供配置共享和服务发现的系统比较多,其中最为大家熟知的是[ 阅读全文
posted @ 2017-05-04 21:56 疯狂的果子 阅读(4079) 评论(0) 推荐(0) 编辑
摘要: Upsync,微博开源基于Nginx容器动态流量管理方案 。 Nginx 以其超高的性能与稳定性,在业界获得了广泛的使用,微博的七层就大量使用了 Nginx 。结合 Nginx 的健康检查模块,以及动态 reload 机制,可以近乎无损的服务的升级上线与扩容。这个时候扩容的频次比较低,大多数情况下是 阅读全文
posted @ 2017-05-04 21:55 疯狂的果子 阅读(2779) 评论(0) 推荐(0) 编辑
摘要: ELK多种架构及优劣 既然要谈ELK在大数据运维系统中的应用,那么ELK架构就不得不谈。本章节引出四种笔者曾经用过的ELK架构,并讨论各种架构所适合的场景和优劣供大家参考。 先大致介绍ELK组件。ELK是Elasticsearch、Logstash、Kibana的简称,这三者是核心套件,但并非全部。 阅读全文
posted @ 2017-05-04 21:52 疯狂的果子 阅读(6671) 评论(0) 推荐(0) 编辑
摘要: 开发单体式应用 假设你正准备开发一款与Uber和Hailo竞争的出租车调度软件,经过初步会议和需求分析,你可能会手动或者使用基于Rails、Spring Boot、Play或者Maven的生成器开始这个新项目,它的六边形架构是模块化的 ,架构图如下: 应用核心是业务逻辑,由定义服务、域对象和事件的模 阅读全文
posted @ 2017-05-04 21:47 疯狂的果子 阅读(286) 评论(0) 推荐(0) 编辑
摘要: 简单日志分析架构图 我做了简化,架构图中的每个组件都可以分别放到不同的机器。这里简单介绍下这些你组件: your app:你的应用,我们的源码中,把这个给省略了 Openresty:基于Nginx的Web开发平台,你可以想像它基于Nginx做了很多扩展,类似淘宝的Tengine。为什么我们不直接使用 阅读全文
posted @ 2017-05-04 21:43 疯狂的果子 阅读(693) 评论(0) 推荐(0) 编辑
摘要: 缓存可以是本地缓存,也可以是分布式缓存;可以自己写个简单的程序,也可以搞个复杂的独立系统作为缓存;可以使用各种复杂的算法,也可以只使用简单的全量缓存;可以使用各种失效机制,也可以只支持人工刷新。缓存重点在于技术,但缓存的难点在于分析哪些数据可以缓存,以什么样的策略缓存。有些数据一看就是可以缓存的,比 阅读全文
posted @ 2017-05-04 21:23 疯狂的果子 阅读(1493) 评论(0) 推荐(0) 编辑