架构
文章平均质量分 89
技术闲聊DD
代码改变生活,程序改变世界!
展开
-
日志收集监控告警平台的选型思考
对于寻求与Grafana紧密结合、侧重标签索引、存储成本低的日志解决方案,推荐Grafana Loki,尤其是对于已经使用Grafana进行监控的团队。如果希望有一体化的可观测性解决方案,看重日志、指标和跟踪的整合,OpenObserve是个值得关注的新星,适合愿意探索和贡献的早期使用者。对于预算有限且关注应用性能监控的小型团队,SigNoz可以作为一个性价比高的选项。对于需要全面日志管理功能和复杂查询能力的传统IT设施或较复杂的分布式系统,Graylog是成熟的选择。原创 2024-03-23 17:58:52 · 1499 阅读 · 0 评论 -
ActiveMQ的安全机制(管控台密码的设置和mq用户认证)
activemq的web管理界面:http://127.0.0.1:8161/admin(1)activemq管控台使用jetty部署,所以需要修改密码则需要修改相应的配置文件D:\apache-activemq-5.12.0\conf\jetty-realm.properties。(2)activemq应该设置有安全机制,只有符合认证的用户才可以发送和接收消息,所以我们可以在activem...原创 2018-10-17 16:20:06 · 3100 阅读 · 0 评论 -
微服务概述
微服务和微服务架构微服务:强调的是服务的大小,他关注的是某一个点,是具体解决某一个问题/提供落地对应服务的一个服务应用。微服务架构:微服务架构是一种架构模式或者说是一种架构风格,它提倡将单一的应用程序划分成一组小的服务,每个服务运行在其独立的进程中,服务之间相互协调,相互配合,为用户提供最终价值。服务之间采用轻量级的通讯机制相互沟通,通常是基于HTTP的RESTful API或者dubbo...原创 2018-11-17 23:05:32 · 159 阅读 · 0 评论 -
Centos7 下的Docker的安装
docker的简单理解在没有使用集装箱的情况下,我们需要考虑不同形状、尺寸的货物怎么安放,货物与货物之间是否能堆叠,这无疑是很繁琐的事情。现在有了集装箱(容器),我们就能将不同的货物放入集装箱之内这样就能以同样的方式来存放货物,实现了标准化。Docker采用了集装箱原理,我们将程序放入到容器中,实现“一次封装,到处运行”,只要开发环境能跑,在其他任何流行的机器上都能运行。并且将程序丢入到容器中...原创 2018-11-20 08:59:17 · 276 阅读 · 0 评论 -
springCloud概述
spring cloud简介SpringCloud,基于SpringBoot提供了一套微服务解决方案,包括服务注册与发现,配置中心,全链路监控,服务网关,负载均衡,熔断器等组件,除了基于NetFlix的开源组件做高度抽象封装之外,还有一些选型中立的开源组件。SpringCloud利用SpringBoot的开发便利性巧妙地简化了分布式系统基础设施的开发,SpringCloud为开发人员提供了快速...原创 2018-12-01 16:45:39 · 397 阅读 · 0 评论 -
Eureka服务注册与发现
1 Eureka的架构Eureka 采用了 C-S 的设计架构。Eureka Server 作为服务注册功能的服务器,它是服务注册中心。而系统中的其他微服务,使用 Eureka 的客户端连接到 Eureka Server并维持心跳连接。这样系统的维护人员就可以通过 Eureka Server 来监控系统中各个微服务是否正常运行。SpringCloud 的一些其他模块(比如Zuul)就可以通过 ...原创 2018-12-06 09:05:57 · 394 阅读 · 1 评论 -
springboot+mybaties+maven聚合工程
项目结构:microservicecloud是父工程,下面的三个是主体子工程。microservicecloud-api主要存放实体类或者配置类,后续可以将其打成jar,在其他子工程中引用。microservicecloud-dept-8888服务方,生产者,提供数据。microservicecloud-consumer-dept-80消费者,利用http调用服务方。1 mave...原创 2018-12-29 14:56:28 · 574 阅读 · 0 评论 -
Eureka注册中心管理服务方,消费方通过Ribbon负载均衡访问(1)
这里我们有三个服务,Eureka注册中心服务,服务方服务,消费方服务,如下图:首先说一下这这三个服务还有Eureka,Ribbon:Eureka是服务注册中心,主要来管理所有的服务,为消费方提供服务,我们将服务注册到Eureka中,然后消费方通过Ribbon负载均衡利用服务名来访问服务,而不是IP。1 Eureka服务 microservicecloud-Eureka-7001pom...原创 2019-01-05 12:34:15 · 554 阅读 · 0 评论 -
springcloud+eureka+ribbon多服务负载均衡(2)
这一次,我们的服务方有两个(8888,9999),然后都注册到eureka上,但是要注意是注册使用同一个服务名称,消费方可以通过ribbon,根据指定的负载均衡算法访问到服务方。所有服务如下图:1eureka注册中心 microservicecloud-Eureka-7001pom.xml<project xmlns="http://maven.apache.org/POM/4....原创 2019-01-05 14:11:00 · 982 阅读 · 0 评论 -
springcloud+eureka+feign负载均衡
目前,在Spring cloud 中服务之间通过restful方式调用有两种方式restTemplate+Ribbonfeign现在咱们采用feign进行负载均衡,他的好处就是可以实现接口式的负载均衡,符合接口式的开发规范,而不是像ribbon,要结合restTemplate。服务如下:注意这里没有的dept-80服务,它被dept-feign服务代替。1 microservic...原创 2019-01-05 16:37:28 · 1839 阅读 · 0 评论 -
springcloud+eureka+Ribbon+Hystrix
1 分布式系统面临的问题复杂分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免地失败。服务雪崩多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其它的微服务,这就是所谓的“扇出”。如果扇出的链路上某个微服务的调用响应时间过长或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,所谓的“雪崩效应”.对于高流量的...原创 2019-01-06 12:04:34 · 396 阅读 · 0 评论 -
Docker简介
docker概念Docker是基于Go语言实现的云开源项目。Docker的主要目标是“Build,Ship and Run Any App,Anywhere”,也就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的APP(可以是一个WEB应用或数据库应用等等)及其运行环境能够做到“一次封装,到处运行”。Linux 容器技术的出现就解决了这样一个问题,而 Docker 就是在它...原创 2019-01-14 11:48:06 · 218 阅读 · 0 评论 -
thymeleaf笔记
url的写法带参数的写法:第一种:参数是以?形式带在后面直接带指定参数<a th:href="@{/showAllUser?page=0}" role="button">首页</a>参数是变量的写法<a th:href="@{/showAllUser(page=(${usersPage.number} le 0 ? 0 :(${usersPage.n...原创 2019-01-29 11:36:27 · 276 阅读 · 0 评论 -
docker常用命令
帮助命令docker versiondocker infodocker --help镜像命令1. docker imagesdocker images1.1 各个选项说明:REPOSITORY:表示镜像的仓库源TAG:镜像的标签IMAGE ID:镜像IDCREATED:镜像创建时间SIZE:镜像大小同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本,我们使用 ...原创 2019-02-21 16:51:19 · 227 阅读 · 0 评论 -
Docker安装
环境说明CentOS DockerDocker支持以下的CentOS版本:CentOS 7 (64-bit)CentOS 6.5 (64-bit) 或更高的版本目前,CentOS 仅发行版本中的内核支持 Docker。Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。Docker 运行在 CentOS-6.5 或更高的版本的 CentOS ...原创 2019-02-21 10:59:40 · 207 阅读 · 0 评论 -
Docker 镜像
简介镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码、运行时、库、环境变量和配置文件。UnionFS(联合文件系统)UnionFS(联合文件系统):Union文件系统(UnionFS)是一种分层、轻量级并且高性能的文件系统,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统...原创 2019-03-04 21:27:57 · 246 阅读 · 0 评论 -
ActiveMQ消息中间件-hello world
生产者package com.wuk.mq;import java.util.concurrent.TimeUnit;import javax.jms.Connection;import javax.jms.ConnectionFactory;import javax.jms.Destination;import javax.jms.MessageProducer;import ...原创 2018-10-16 16:33:17 · 139 阅读 · 0 评论 -
activemq消息中间件--JMS概述(1)
1 JMS概述目前现在很多的RPC中间件技术都有如下问题:(1)同步通信,客户端发出调用请求,必须等待服务端处理完成以后返回结果才能继续执行。(2)客户和服务对象的生命周期紧密耦合,客户进程和服务进程都必须正常进行,如果由于服务对象的崩溃和网络故障导致客户请求不可达,客户收到异常。(3)点对点通信,客户的一次调用只发送给某个单独的目标对象。面向消息的中间件可以解决上述问题。发送者将消息发...原创 2018-10-16 16:28:16 · 142 阅读 · 0 评论 -
银行开发专业术语解释和银行系统开发架构的设计思想
1 轧差轧差指的是当日A和B银行有资金来往,早上B要给A银行打10万,下午A要给B打20万,经过轧差,日终清算的时候,A只需要给B打10万就行了,不然就浪费时间了。2 结算 清算 清分根据《中国银联银行卡联网联合技术规范V2.1》定义: 清分 Clearing 对交易数据依据机构和交易类型进行分类汇总,并计算结算金额的过程。清算 Settlement 指根据清分结果对交...原创 2018-06-19 11:47:35 · 7763 阅读 · 0 评论 -
Linux下的SVN服务器的安装
1、检查是否安装了低版本的SVN rpm -qa | grep subversion 2 卸载旧版本yum remove subversion3 安装yum –y install subversion4 检查安装是否成功svnserve –version5 代码库创建 mkdir -p /var/svn/wuk svnadmin create /原创 2017-09-18 17:13:02 · 661 阅读 · 0 评论 -
CentOS下安装JDK的三种方法
由于各Linux开发厂商的不同,因此不同开发厂商的Linux版本操作细节也不一样,今天就来说一下CentOS下JDK的安装:方法一:手动解压JDK的压缩包,然后设置环境变量1.在/usr/目录下创建java目录[root@localhost ~]# mkdir/usr/java [root@localhost ~]# cd /usr/java2.下载jdk,然后解压[root@localhost转载 2017-11-02 18:39:38 · 368 阅读 · 0 评论 -
区块链技术
区块链是数据库的一种,它拥有大量的记录,并将这些记录全部放在区块内,每个区块通过使用加密签名,链接到下一个区块。人们可以想使用账本那样使用区块链,也可以共享,也可以被拥有适当权限的人查阅。通俗的说,区块链就是一个公开的分布式账簿系统。以比特币的区块链为例,每一个参与交易者都是区块网络的节点,每一个参与交易者都是区块网络的节点,每个节点都有一份完整的公共账簿备份,上面记载着自比特币诞生到现在的所有交易原创 2017-12-19 18:51:56 · 1757 阅读 · 1 评论 -
《一头扎进Shiro》第01讲
首先创建一个maven项目。加入jar包 首先加入shiro的jar包 <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifactId> <version>1.4.0</version> </dependency>这个时候它的依赖原创 2017-12-27 23:31:09 · 275 阅读 · 0 评论 -
Spring实战 第2章 装配Bean
本章内容: 1. 声明bean 2. 构造器注入和Setter方法注入 3. 装配bean 4. 控制bean的创建和销毁 在Spring中,对象无需自己查找或创建与其所关联的其他对象。相反,容器负责把需要相互协作的对象引用赋予各个对象。例如,一个订单管理组件需要信用卡认证组件,但它不需要自己创建信用卡认证组件。订单管理组件只需要表明自己两手空空,容器就会主动赋予它一个信用卡认证组件。创建原创 2018-01-13 16:34:53 · 424 阅读 · 0 评论 -
在window把自己的项目上传到github
首先根据下图的操作创建一个仓库,这是干什么的?可以简单粗暴的理解为一个项目一个仓库就行了。创建成功后看到到下图,这图的那个地址先记住了,一会可是要用的呢,这是这个仓库的地址,我们项目要传到这里来。然后就去下载一个git,可以网上搜索git下载,会有很多教程,这里我贴出官方的下载地址:https://git-scm.com/downloads/ 还有一个网上找的安装教程:http://jing...转载 2018-01-22 16:58:19 · 571 阅读 · 0 评论 -
Eclipse快捷键大全
存盘 Ctrl+s(肯定知道) 注释代码 Ctrl+/ 取消注释 Ctrl+(Eclipse3已经都合并到Ctrl+/了) 代码辅助 Alt+/ 快速修复 Ctrl+1 代码格式化 Ctrl+Shift+f 整理导入 Ctrl+Shift+o 切换窗口 Ctrl+f6 <可改为ctrl+tab方便> ctrl+shift+M 导入未引用的包 ctrl+w 关闭单个转载 2017-12-30 14:32:40 · 156 阅读 · 0 评论 -
Log4j详细介绍
1 log4j介绍Log4j log for java(java的日志) 是java主流的日志框架,提供各种类型,各种存储,各种格式,多样化的日志服务;2 入门案例步骤一: 建一个Maven简单项目 ,并pom.xml引入log4j<dependency> <groupId>log4j</groupId> <a...原创 2018-02-28 15:50:09 · 2384 阅读 · 0 评论 -
《一头扎进Shiro》第06讲
内容: (1)url模式使用Ant风格模式 (2)shiro标签的使用 (3)shiro会话机制一. url模式使用Ant风格模式规则: (1) 风格模式 Ant 路径通配符支持?、*、**,注意通配符匹配不包括目录分隔符“/”: ? :匹配一个字符,如”/admin?”将匹配/admin1,但不匹配/admin 或/admin2; * :匹配零个或多个字符串,如/admin*将匹配/原创 2018-03-08 15:30:47 · 143 阅读 · 0 评论 -
互联网并发编程(1)--线程基础
1 线程安全概念: 当多个线程访问某一个类(对象或方法)时候,这个类始终都能表现出正确的行为,那么这个类(对象或方法)就是线程安全的。2 synchronized: 可以在任意对象以及方法上加锁,而加锁的这段代码称为互斥区或者临界区。案例1: 不加synchronizedpackage com.wuk.thread;public class ThreadTest extends Thread原创 2018-03-20 11:21:11 · 174 阅读 · 0 评论 -
webWork和JSP整合案例
步骤1 :建立一个Maven的Web项目注意: src/main/java和src/main/resources可能需要手动添加,如果遇到无法手动添加的可以在build path里面去掉已经存在的,然后手动添加。步骤2:在pom.xml中引入jar<dependency> <groupId>opensymphony</groupId> <artifa原创 2018-05-01 22:53:02 · 507 阅读 · 0 评论 -
java开发的成长迷茫--java架构师
我自己已经工作快两年了,毕业一年了,我的目标定位是java架构师,可是对于自己该怎样成为一名架构师,很迷茫,同时也在不知道未来的成长过程该怎么走,总是在盲目的学习新技术,可是新技术是学不完的,总不能一辈子在学习新技术的道路上,然后做一两个小Demo,我感觉是时候给自己的知识体系做一个完善了,定位好目标,然后不断的完善自己才是最重要的。所以从现在应该做的是这样子:第一步:定位未来的职业目标。 ...原创 2018-04-24 16:19:16 · 655 阅读 · 1 评论 -
自己整合SSM(spring+springmvc+mybaits)框架心得
想自己在工作闲暇做一个完成的项目,现在我说一下我整合框架时候的心得。工具:STS 开发工具 Apache-maven-3.5.3 Apache-tomcat-7.0.30步骤一:首先安装maven 并做一些修改然后在STS进行配置。 settings.xml的修改: 改成阿里云的仓库<?xml version="1.0" encoding="UTF-8"?><settings xmln原创 2018-05-10 13:22:23 · 565 阅读 · 1 评论 -
大型分布式网站架构设计--第1章 面向服务体系的架构
本章目录: 分布式Java应用图:分布式Java应用:大型系统会被拆分成多个子系统来实现,对于Java来说,这些子系统可能部署在同一台机器上不同的JVM,或者部署在不同机器上,但是这些子系统之间要进行相互通信来共同实现业务功能。分布式应用架构的演变 分布式应用架构面临的首要问题,便是如何实现应用之间的远程调用(RPC)。有两种方式:一种是基于HTTP的RPC,一种是基于...原创 2018-06-17 09:35:07 · 460 阅读 · 0 评论 -
Linux CentOS7下安装Zookeeper
安装准备JDK下载 jdk-8u171-linux-x64.gz ZooKeeper下载 zookeeper-3.4.10.tar.gz安装JDK1 检查一下系统中的jdk版本&gt; java -version显示openjdk version "1.8.0_102"OpenJDK Runtime Environment (build 1.8.0_102...原创 2018-06-18 17:41:10 · 1186 阅读 · 0 评论 -
MyBatis传入多个参数的问题
一、单个参数:public ListXXBean> getXXBeanList(String xxCode); select id="getXXXBeanList" parameterType="java.lang.String" resultType="XXBean"> select t.* from tableName t where t.id= #{id} se转载 2017-09-18 12:02:05 · 393 阅读 · 0 评论