本文给出了一个通用Java IO API设计,并且有API的Demo代码。更重要的是给出了这个API设计本身的步骤和过程,这让API设计有些条理。 文中示范了从 普通简单实现 整理成 正交分解、可复用、可扩展、高性能、无错误的API设计 的过程,这个过程是很值得理解和学习!设计偏向是艺术,一个赏心悦目的设计,尤其是API设计,旁人看来多是妙手偶得的感觉,如果能有些章可循真是一件
转载
2024-04-09 17:01:37
42阅读
最近公司项目要调整架构,要上AXON。Axon是一个轻量级的框架,帮助开发者在架构层面建立可伸缩的和可扩展的应用程序。本参考指南解释了什么是Axon,以及如何使用它。简介随着时间的推移,软件项目的需求将会迅速增加。公司已经无法接受,通过过于简单的说明性网页来介绍和提升他们的业务,他们希望自己的(网络)应用程序与业务一起发展。这意味着,不仅是项目和代码变得更加复杂,同时功能也在不断增加、变化和移除。
转载
2023-12-21 09:52:32
69阅读
十四、管理14.1 设置14.1.1 系统属性配置文件最常见和首选的方法是axon server.properties或者\_axon server.yml\**_包含所需配置参数的文件。文件的位置应该是当前工作目录,或者也可以放在“_config_”子目录中(相对于当前工作目录)。一个重要的注意事项-如果两个文件都被Axon服务器检测到,它将从这两个文件中读取。命令行如果服务器使用“java–j
转载
2024-08-26 16:59:49
26阅读
十五、安全15.1 访问控制由于Axon服务器是一个事件存储,可能包含敏感数据,因此在生产环境和类似生产环境中启用访问控制始终是一个很好的实践。启用访问控制将要求应用程序在访问Axon服务器服务(通过gRPC和HTTP)时提供令牌,并要求用户登录仪表板要在Axon服务器(SE/EE)中启用访问控制,请将以下属性添加到axonserver.properties:axoniq.axonserver.a
# Java Axon框架教程
作为一名经验丰富的开发者,我将为你介绍如何使用Java Axon框架。Axon是一个用于构建可伸缩和可扩展应用程序的开发框架,它基于CQRS(命令查询责任分离)模式和事件驱动架构。
## 整体流程
下面是使用Axon框架实现一个简单的Java应用程序的流程:
| 步骤 | 描述 |
| --- | --- |
| 1 | 创建项目 |
| 2 | 添加Axo
原创
2023-08-15 08:48:14
419阅读
Android中需要知道的Java集合框架吧 前言子曰:温故而知新,可以为师矣。做android已经有好一段时间了,今天突然看到代码中写的各种用来存储数据的ArrayList、管理Activity的LinkedList、用来Retrofit请求数据时多个参数拼接的HashMap。也许使用已经成为了一种习惯,可是使用他的理由又开始在脑海中慢慢淡化了,故写一篇文章来温故 在我们平时的andr
转载
2023-09-19 06:04:41
43阅读
2004年,Eric Evans发表了Domain Driven Design(领域驱动设计,DDD)这一著作,并在书中对领域驱动作出了开创性的理论阐述,至今领域驱动设计已问世十几年。近几年来随着微服务盛行, ES(Event Sourcing)事件溯源和CQRS(Command Query Responsibility Segregation)读写分离也成为了一个越来越流行的概念,使用ES和CQ
转载
2020-11-08 16:41:41
953阅读
Axon 框架是基于JVM平台的开源产品,由Allard Buijze于2009年创立。2017年7月,成立了一家独立公司AxonIQ,专门与Axon产品合作。
Axon 框架的程序遵循基于领域驱动设计(DDD)思想、命令查询职责分离 (CQRS)、事件驱动架构(Event Driven Archi... ...
转载
2021-08-19 21:32:00
646阅读
2评论
转载
2021-08-06 18:40:00
284阅读
2评论
在国产智能手机阵营中,“中华酷联”是早期一线阵营代表,但随着小米、魅族等后起之秀崛起,整个手机市场开始进入全新的竞争阶段。
原创
2015-08-18 23:21:37
367阅读
生物神经元: 上图所示为生物学中一种最常见的神经元类型,主要由树突、细胞体和轴突组成。其各部分主要职责为: 1.树突:从其他多个神经元处接受神经递质并转为电信号; 2.细胞体:处理从树突得来的所有电信号,如果信号值达到了动作电位,则会向轴突方向传递新的电信号; 3.轴突:向其他神经元发送信号。 因为一个神经元树突上的分支很多,因此可以接受很多来自其他神经元的信号,但是轴突只有一个,因此即使轴突与其
DDD & CQRS Concepts - DDD与CQRS概念 Axon在很大程度上基于领域驱动设计(DDD)和命令查询职责分离(CQRS)原则。尽管完整解释这些概念超出了该参考文档的范围与意图,我们确实希望提供在Axon应用上下文中最重要的概念的总结。 Strategic concepts - ...
转载
2021-08-20 11:04:00
195阅读
2评论
通过阅读该篇博客,你可以了解了解java的反射机制、可以了解如何基于spring生命周期使用自定义注解解决日常研发问题。具体源码可以点击 链接 。问题描述在日常研发中,经常会遇见业务A的某个action被触发后,同时触发业务B的action的行为,这种单对单的形式可以直接在业务A的action执行结束后直接调用业务B的action,那么如果是单对多的情况呢?方案解决这里提供一种在日常研发中经常使用
Spring IOC(DI) 和 AOPSpring中IOC和AOP可以说是最为基础也最为重要的设计思想了,但是不是只有Spring才有这种设计,其他很多的编程语言也有类似的设计。IOC和AOP是一种设计思想而Spring中的IOC和AOP是一种具体的实现,类似于接口和实现类的关系,接下来如果明确特指本文中的IOC和AOP都是指Spring中的IOC和AOP我们简单看一下百度对于这两者的解释IOC
转载
2024-06-05 09:25:02
15阅读
CQRS框架Axon的最新版本支持了MongoEventStore,它使用了MongoDB作为后台存储,提供了一套简化的API,并带来了性能上的提升。最新的发布版本2.0允许事件对象基于POJO及批注(annotation)定义消息、负载和元数据。新版本中的其它特性还包括:一个高性能的命令总线,它能以一种无锁的算法并行地进行命令处理,能够在每个时间单元处理多出四倍的命令。新的代码逻辑以确保事件的序列化仅发生一次,并确保仅在实际使用事件时进行反序列化。对大量事件的重播得到极大的加快。一个分布式的命令总线,允许横向扩展至多台机器,并调整每台机器的负载。支持事件的转型(Upcasting)及分解(D
转载
2013-03-16 21:45:00
89阅读
2评论
跟踪令牌跟踪事件处理器使用跟踪令牌来跟踪已处理的事件。跟踪令牌表示事件流中事件的位置。不同的事件存储实现可以使用跟踪令牌的不同实现来可靠地表示该位置。为了能够在进程重新启动后继续事件处理(我们稍后会看到这不是唯一的原因),跟踪令通常,存储跟踪令牌的最佳位置是也存储投影(或Saga)的...
原创
2023-05-30 21:40:00
131阅读
一、java环境搭建步骤1.安装JDK(Java Development Kit),可去官方下载最新版(JDK官方下载链接),也可在本文最下方下载。 2.配置JDK环境变量,本文提供一键配置环境变量。 3.安装开发搭建环境(Ecplise),Ecplise汉化。本文提供的文件比较大,建议在阅读本文前,先下载配置文件。 [JDK下载地址] [环境变量一键配置下载地址] [Ecplise下载地址] [
转载
2023-07-21 13:00:07
52阅读
java开发环境搭建与配置 1.首先鼠标右击我的电脑,找到“属性”,点击进入 2.找到“高级系统设置”,点击进入 3.点击“高级”,再点击“环境变量” 4.选择“系统变量” 用户变量只对当前用户有效,如用户更换,环境会找不到相应的路劲,配置的环境将失效(当然也是可以配置的) 5.在系统变量新建一个“JAVA_HOME”的变量名,然后把你的java的JDK路径填入到变量中,我的在“C:\Progra
转载
2023-06-21 21:30:18
84阅读
window系统安装java下载JDK首先我们需要下载java开发工具包JDK,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html,点击如下下载按钮:在下载页面中你需要选择接受许可,并根据自己的系统选择对应的版本(每个人的操作系统是不一样的),本文以 Window 64位系统为例:下载后JDK的安装根据提示
转载
2023-07-26 22:10:03
50阅读
OJ实验平台,采用沙箱后端运行代码,实现安全的实时评测(OJ)。此平台搭建的初衷为学校的数据结构实验提供课程代码的编写和测评,以此方便学生实验时得到实时的反馈,此后陆续被多个实验课程采用。本人在项目开发过程中,主要承担了OJ部分和题目部分的后端开发。需求分析将实验平台的功能分为核心业务和底层服务两大模块。核心业务模块:OJ评测模块用户管理模块(涉及验证)作业提交模块底层服务模块:日志记录限流保护用
转载
2023-12-06 20:49:20
62阅读