zhizhesoft

  • 首页
架构
Java

KnockoutJs学习笔记(八)

with binding用于创建一个新的绑定环境(binding context),包含with binding的元素的所有子元素都将处于指定的object的环境限定内。 下面是一个简单的使用with binding的例子: js部分: 1 var viewModel = { 2 key: "Name", 3 person: { 4 firstName: "Kazusa", 5 lastName: "Touma" 6 } 7 }; 8 9 ko.applyBindings(viewModel); html部分: 1…

2022年6月25日 0条评论 22点热度 0人点赞 risingsun 阅读全文
架构

前端的架构设计与演化实例

前言 本文介绍我在实际的前端项目中的架构设计,展示因为需求变化而导致架构变化的过程。 全文分为三个阶段,分别对应三次需求的变化,给出了对应的架构设计。 在第一个阶段中,我使用面向过程设计;在第二个阶段和在第三个阶段中,我使用面向对象设计。 本文内容 策略 依赖项 第一个阶段 需求 架构设计 项目示例代码 序列图 重构 领域模型 分析当前设计 第二个阶段 需求 架构设计 分析当前设计 重构 项目示例代码 序列图 分析具体实现 重构 领域模型 思考:是否需要使用观察者模式重构 分析当前设计 第三个阶段 需求 架构设计 …

2022年6月15日 0条评论 84点热度 0人点赞 risingsun 阅读全文
架构

rest设计思想

源自:http://www.cnblogs.com/loveis715/p/4669091.html

2022年6月9日 0条评论 24点热度 0人点赞 risingsun 阅读全文
ENode

ENode框架单台机器在处理Command时的设计思路

设计目标 尽量快的处理命令和事件,保证吞吐量; 处理完一个命令后不需要等待命令产生的事件持久化完成就能处理下一个命令,从而保证领域内的业务逻辑处理不依赖于持久化IO,实现真正的in-memory; 保证命令、事件处理的顺序性,先来的先处理,先产生的先处理; 保证一个聚合根的事件只有一个线程在持久化,并按事件产生的顺序持久化; 持久化事件时如果遇到并发冲突时(聚合根ID+事件版本号出现重复)的处理代价要轻; 要能利用多核的优势; 总体设计思路 先将命令根据聚合根ID路由到CommandMailBox里; 单线程处理C…

2022年6月7日 0条评论 30点热度 0人点赞 risingsun 阅读全文
CQRS & Event Sourcing

2015年写的重要文章

浅谈12306核心模型设计思路和架构设计[推荐] DDD部分核心概念的个人理解 DDD CQRS架构和传统架构的优缺点比较[推荐] DDD实践问题之 - 关于论坛的帖子回复统计信息的更新的思考 ENode 2.6 架构与设计简介以及全新案例分享[推荐] ENode框架Conference案例分析系列之 - 文章索引[推荐] ENode框架单台机器在处理Command时的设计思路 EQueue - 一个纯C#写的分布式消息队列介绍2 EQueue文件持久化消息关键点设计思路 EQueue 2.0 发布啦[推荐] EQ…

2022年6月7日 0条评论 32点热度 0人点赞 risingsun 阅读全文
架构

DDD实践问题之 - 关于论坛的帖子回复统计信息的更新的思考

之前,在用ENode开发forum案例时,遇到了关于如何实现论坛帖子的回复的统计信息如何更新的问题。后来找到了自己认为比较合理的解决方案,分享给大家。也希望能和大家交流,擦出更多的火花。 论坛核心领域问题分析 论坛领域的核心概念是:帖子、回复。大家都知道,一个帖子可以有零个或多个回复。对同一个帖子,不同的人可以并行发表回复。回复发表后,查看帖子详情时,可以根据回复的发表时间排序显示;此外,我们还关心某个帖子的最新发表的回复、最新回复的作者、最新回复时间,以及总回复数。 我们设计的系统,应该在实现上述的领域问题的前提…

2022年6月7日 0条评论 29点热度 0人点赞 risingsun 阅读全文
架构

GUID做主键真的合适吗

在一个分布式环境中,我们习惯使用GUID做主键,来保证全局唯一,然后,GUID做主键真的合适吗? 其实GUID做主键本身没有问题,微软的很多项目自带DB都是使用GUID做主键的,显然,这样做是没有问题的。然而,SQL Server默认会将主键设置为聚集索引,使用GUID做聚集索引就有问题了。很多时候程序员容易接受SQL Server这一默认设置,但无序GUID做聚集索引显然是低效的。 那么,我们在项目中如何避免这一问题呢? 主要的思路还是两方面——方案一,选择合适的列作为聚集索引;方案二,使用有序的主键。 1 方案…

2022年6月3日 0条评论 36点热度 0人点赞 risingsun 阅读全文
架构

边缘缓存模式(Cache-Aside Pattern)

边缘缓存模式(Cache-Aside Pattern),即按需将数据从数据存储加载到缓存中。此模式最大的作用就是提高性能减少不必要的查询。 1 模式 先从缓存查询数据 如果没有命中缓存则从数据存储查询 将数据写入缓存 代码形如: public async Task<MyEntity> GetMyEntityAsync(int id) { // Define a unique key for this method and its parameters. var key = string.Format("…

2022年6月3日 0条评论 16点热度 0人点赞 risingsun 阅读全文
SSO

SSO 方案演进

背景介绍 随着业务与技术的发展,现今比以往任何时候都更需要单点登录 SSO 身份验证。 现在几乎每个网站都需要某种形式的身份验证才能访问其功能和内容。 随着网站和服务数量的增加,集中登录系统已成为一种必要。 在本文中,我们将研究 SSO 身份验证的方案演进。   问题描述 开发团队迟早会面临一个问题,已经开发了网站 A,新开发的网站 B 希望使用网站 A 的登录信息,而不是使用一套新的登录信息,如下图所示: 事实上,你可能还希望已经在网站 A 登录的用户自动完成网站 B 的登录。 问题的解决方案显然是实现跨不同域之…

2022年6月3日 0条评论 19点热度 0人点赞 risingsun 阅读全文
CI/CD

使用 Postman 实现 API 自动化测试

背景介绍 相信大部分开发人员和测试人员对 postman 都十分熟悉,对于开发人员和测试人员而言,使用 postman 来编写和保存测试用例会是一种比较方便和熟悉的方式。但 postman 本身是一个图形化软件,相对较难或较麻烦(如使用 RPA)实现自动化测试。幸运的是,postman 还提供了一个命令行工具 newman,我们可以借助 postman + newman 来实现 API 自动化测试。   名词解析 1. Collection Collection 是一组保存的请求,postman 中发送的每个请求都…

2022年6月3日 0条评论 44点热度 0人点赞 risingsun 阅读全文
12345…105
Search

COPYRIGHT © 2022 zhizhesoft. ALL RIGHTS RESERVED.