随笔分类 -  架构设计

分布式日志框架之ExceptionLess【二】:自行搭建帮助文档【译文】
摘要:原文地址:https://github.com/exceptionless/Exceptionless/wiki/Self-Hosting ExceptionLess自行托管环境搭建 一、测试环境 如果你想在本地测试ExceptionLess,请遵循本节如下步骤。但是,请注意!以下事项仅用于测试环境 阅读全文

posted @ 2018-12-19 19:46 SuperSnowYao 阅读(972) 评论(2) 推荐(0) 编辑

Apache SkyWalking的架构设计【译文】
摘要:Apache SkyWalking提供了一个功能强大并且很轻量级的后端。在此,将介绍为什么采用以下方式来设计它,以及它又是如何工作的。 架构图 对于APM而言,agent或SDKs仅是如何使用libs的技术细节。手动或自动的形式与架构无关,因此在本文中,我们不讲这些内容,可将这些看成为Client 阅读全文

posted @ 2018-06-30 12:54 SuperSnowYao 阅读(1908) 评论(2) 推荐(2) 编辑

AutoMapper在项目中的应用
摘要:一、先说说DTO DTO是个什么东东? DTO(Data Transfer Object)就是数据传输对象,说白了就是一个对象,只不过里边全是数据而已。 为什么要用DTO? 1、DTO更注重数据,对领域对象进行合理封装,从而不会将领域对象的行为过分暴露给表现层。 2、DTO是面向UI的需求而设计的, 阅读全文

posted @ 2018-06-14 20:00 SuperSnowYao 阅读(394) 评论(0) 推荐(0) 编辑

秒杀系统架构优化思路
摘要:一、秒杀业务为什么难做 1、im系统,例如qq或者微博,每个人都读自己的数据(好友列表、群列表、个人信息); 2、微博系统,每个人读你关注的人的数据,一个人读多个人的数据; 3、秒杀系统,库存只有一份,所有人会在集中的时间读和写这些数据,多个人读一个数据; 例如: 小米手机每周二的秒杀,可能手机只有 阅读全文

posted @ 2018-03-31 16:42 SuperSnowYao 阅读(332) 评论(0) 推荐(0) 编辑

应用程序框架(一):DDD分层架构:领域实体(基础篇)
摘要:一、什么是实体 由标识来区分的对象称为实体。 实体的定义隐藏了几个信息: 两个实体对象,只要它们的标识属性值相等,哪怕标识属性以外的所有属性值都不相等,这两个对象也认为是同一个实体,这意味着两个对象是同一实体在其生命周期内的不同阶段。 为了能正确区分实体,标识必须唯一。 实体的标识属性值是不可变的, 阅读全文

posted @ 2018-03-01 14:03 SuperSnowYao 阅读(2591) 评论(0) 推荐(0) 编辑

中小型研发团队架构实践十:应用监控怎么做?
摘要:一、Metrics 简介 应用监控系统 Metrics 由 Metrics.NET+InfluxDB+Grafana 组合而成,通过客户端 Metrics.NET 在业务代码中埋点,Metrics.NET 会把收集到的数据存储在 InfluxDB 数据库中,然后通过 Grafana 来展示监控数据。 阅读全文

posted @ 2018-02-10 16:25 SuperSnowYao 阅读(1332) 评论(0) 推荐(1) 编辑

中小型研发团队架构实践九:任务调度Job
摘要:一、Job 简介 Job 类似于数据库中的作业,多用于实现定时执行任务。适用场景主要包括定时轮询数据库同步、定时处理数据、定时邮件通知等。 我们的 Job 分为操作系统级别定时任务 WinJob 和 HttpJob,其中,WinJob 使用开源的任务调度框架 Quartz.NET+ ZooKeepe 阅读全文

posted @ 2018-02-10 15:15 SuperSnowYao 阅读(369) 评论(0) 推荐(1) 编辑

中小型研发团队架构实践八:分布式协调服务ZooKeeper
摘要:一、ZooKeeper 是什么 Apache ZooKeeper 由 Apache Hadoop 的子项目发展而来,于 2010 年 11 月正式成为了 Apache 的顶级项目。 ZooKeeper 是一个开放源代码的分布式协调服务。它具有高性能、高可用的特点,同时也具有严格的顺序访问控制能力(主 阅读全文

posted @ 2018-02-10 14:35 SuperSnowYao 阅读(262) 评论(0) 推荐(1) 编辑

软件架构系列二:Clean架构
摘要:外圈的层次可以依赖内层,反之不可以;内圈核心的实体代表业务,不可以依赖其所处的技术环境。 这是著名软件大师Bob大叔提出的一种架构,也是当前各种语言开发架构。干净架构提出了一种单向依赖关系,从而在逻辑上形成一种向上的抽象系统。 这种干净的架构图如下: 依赖规则Dependency Rule 上图中同 阅读全文

posted @ 2018-02-08 18:43 SuperSnowYao 阅读(2953) 评论(0) 推荐(1) 编辑

软件架构系列一:C4模型
摘要:本文要点预览:因为软件系统的分布式特点以及开发团队的分布性,了解软件架构的基础变得越来越重要。而在过度设计和毫无设计之间,我们应该把注意力放在对软件系统有重大影响的决策和权衡上。好的架构师应该是团队的活跃分子,不仅能够进行代码协作,还能为团队提供技术指导。软件架构中的沟通环节极具挑战性。C4 模型对 阅读全文

posted @ 2018-02-08 16:51 SuperSnowYao 阅读(8321) 评论(0) 推荐(1) 编辑

中小型研发团队架构实践七:集中式日志ELK
摘要:一、集中式日志 日志可分为系统日志、应用日志以及业务日志,系统日志给运维人员使用,应用日志给研发人员使用,业务日志给业务操作人员使用。我们这里主要讲解应用日志,通过应用日志来了解应用的信息和状态,以及分析应用错误发生的原因等。 随着系统的日益复杂,大数据时代的来临,需要几十甚至上百台的服务器是常有的 阅读全文

posted @ 2018-01-29 09:44 SuperSnowYao 阅读(1784) 评论(0) 推荐(1) 编辑

中小型研发团队架构实践六:如何用好消息队列RabbitMQ?
摘要:一、写在前面 使用过分布式中间件的人都知道,程序员使用起来并不复杂,常用的客户端 API 就那么几个,比我们日常编写程序时用到的 API 要少得多。但是分布式中间件在中小研发团队中使用得并不多,为什么会这样呢? 原因是中间件的职责相对单一,客户端的使用虽然简单,但整个环境搭起来却不容易。所以对于系列 阅读全文

posted @ 2018-01-28 11:02 SuperSnowYao 阅读(816) 评论(0) 推荐(1) 编辑

中小型研发团队架构实践五:Redis快速入门及应用
摘要:Redis的使用难吗?不难,Redis用好容易吗?不容易。Redis的使用虽然不难,但与业务结合的应用场景特别多、特别紧,用好并不容易。我们希望通过一篇文章及Demo,即可轻松、快速入门并学会应用。 一、Redis 简介 Redis是一个开源的Key-Value存储,但又不仅仅是Key-Value存 阅读全文

posted @ 2018-01-28 10:30 SuperSnowYao 阅读(580) 评论(0) 推荐(1) 编辑

中小型研发团队架构实践四:小工具集合
摘要:一、ORM 工具 1.1、Dapper.NET 简介 Dapper.NET是个开源的轻型ORM。它扩展了IDbConnection 接口的功能,所以只要某类实现IDbConnection 接口,那么该类对象就能调用到 Dapper.NET中的方法。提供的 Dapper.dll,支持.NET Fram 阅读全文

posted @ 2018-01-28 00:16 SuperSnowYao 阅读(737) 评论(1) 推荐(1) 编辑

.NET平台微服务项目汇集
摘要:最近博客园出现了一篇文章《微服务时代之2017年五军之战:Net PHP谁先死》,掀起了一波撕逼,作者只是从一个使用者的角度来指点江山,这个姿势是不对的。.NET Core就是专门针对模块化的微服务架构而设计,在微服务架构这方面Java的Spring Cloud具有非常高的人气,这个正是这篇文章作者 阅读全文

posted @ 2018-01-27 17:31 SuperSnowYao 阅读(400) 评论(0) 推荐(2) 编辑

中小型研发团队架构实践三:微服务架构(MSA)
摘要:一、MSA 简介 1.1、MSA 是什么 微服务架构 MSA 是 Microservice Architect 的简称,它是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间互相通讯、互相配合,为用户提供最终价值。它与 SOA 之间的区别如下: 1.2、我们的 MSA 框架 我们的微服务 阅读全文

posted @ 2018-01-11 09:47 SuperSnowYao 阅读(3447) 评论(0) 推荐(2) 编辑

中小型研发团队架构实践二:如何规范公司所有应用分层
摘要:一、写在前面 应用分层这件事情看起来很简单,但每个程序员都有自己的一套,哪怕是初学者。如何让一家公司的几百个应用采用统一的分层结构,并得到大部分程序员的认同呢?这可不是件简单的事情,接下来以我们真实案例与大家一起探讨,先问大家两个技术问题: 服务的调用代码你觉得放到哪一层好呢? A 表现层 B 业务 阅读全文

posted @ 2018-01-10 12:47 SuperSnowYao 阅读(809) 评论(1) 推荐(3) 编辑

中小型研发团队架构实践一:三要点
摘要:中小型研发团队很多,而社区在中小型研发团队架构实践方面的探讨却很少。中小型研发团队特别是 50 至 200 人的研发团队,在早期的业务探索阶段,更多关注业务逻辑,快速迭代以验证商业模式,很少去关注技术架构。 这时如果继续按照原有的架构及研发模式,会出现大量的问题,再也无法玩下去了。能不能有一套可直接 阅读全文

posted @ 2018-01-08 21:23 SuperSnowYao 阅读(912) 评论(0) 推荐(3) 编辑

导航

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8
点击右上角即可分享
微信分享提示