
架构
文章平均质量分 96
rainyear
这个作者很懒,什么都没留下…
展开
-
springBoot基于RateLimiter+AOP动态的为不同接口限流
1.首先接口限流算法: 1.计数器方式(传统计数器缺点:临界问题 可能违背定义固定速率原则) 2.令牌桶方式 3.漏桶方式 4.应用层限流(Nginx)2.限流实现: 2.1. RateLimiter是guava提供的基于令牌桶算法的实现类,可以非常简单的完成限流特技,并且根据系统的实际情况来调整生成t...转载 2019-08-26 09:13:00 · 664 阅读 · 0 评论 -
websocket 简单聊天(转发)
前两篇博客演示了广播式的websocket 推送。广播式有自己的应用场景,但是广播式不能解决我门一个常见的场景,即消息由谁发送、由谁接收的问题。本例中演示了一个简单的聊天室程序。例子中只有两个用户,互相发送消息给彼此,因需要用户相关内容,所以这里引入了最简单的spring Security相关内容。本文原代码会在文章末尾给出,但是原代码中包含spring boot +WebSocket ...转载 2018-10-09 11:51:07 · 1145 阅读 · 0 评论 -
代码质量管理平台SonarQube的安装、配置与使用(转)
https://www.cnblogs.com/qiumingcheng/p/7253917.html 代码质量管理平台SonarQube的安装、配置与使用SonarQube是管理代码质量一个开放平台,可以快速的定位代码中潜在的或者明显的错误,下面将会介绍一下这个工具的安装、配置以及使用。准备工作;1、jdk(不再介绍)2、sonarqube:http://www.s...转载 2018-09-19 16:51:50 · 243 阅读 · 0 评论 -
通过ELK快速搭建一个你可能需要的集中化日志平台
通过ELK快速搭建一个你可能需要的集中化日志平台 在项目初期的时候,大家都是赶着上线,一般来说对日志没有过多的考虑,当然日志量也不大,所以用log4net就够了,随着应用的越来越多,日志散落在各个服务器的logs文件夹下,确实有点不大方便,这个时候就想到了,在log4net中配置 mysql的数据源,不过这里面有一个坑,熟悉log4net的同学知道写入mysql有一个batch的阈值,...转载 2018-04-18 11:04:16 · 666 阅读 · 0 评论 -
Dubbo zookeeper 安装配置 (转发)
Dubbo zookeeper 初探分类: zookeeper&dubbo2013-11-14 21:39 1112人阅读 评论(0) 收藏 举报转:http://blog.youkuaiyun.com/u011270461/article/details/12144623建议参考资料:http://blog.youkuaiyun.com/lin_fs/article/details/转载 2014-02-28 17:59:12 · 6129 阅读 · 0 评论 -
整合spring mvc和mybatis,spring,maven的pom脚本 (转发)
http://happycoolyp.iteye.com/blog/1924913博客分类:spring mybatisspringmvcmaven 废话补多少,直接上pom.xml。 希望对大家有用。Java代码 "http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.or转载 2014-02-26 18:13:17 · 1898 阅读 · 0 评论 -
Spring 整合 Redis 分类:(转发)
pom构建:[html] view plaincopyprint?modelVersion>4.0.0modelVersion> groupId>com.x.redisgroupId> artifactId>springredisartifactId> version>0.0.1-SNAPSHOTversion>转载 2014-03-05 17:19:09 · 1627 阅读 · 0 评论 -
mysql数据库双机同步开源软件otter (转发)
哎,新项目的数据库同步方案初步考虑用Mysql自带的双主复制机制,被客户方的dba狠狠的鄙视了,只扔过来一句:不同意,原因:无。 先说下项目情况,数据库是只用于管理后台供管理员配置使用,不影响任何业务的主流程,单机房可以满足需求。 可是客户非要求用双机房双写,本着简单解决问题的想法,我们就打算采用单点写双读。可是结果。。。。郁闷的是,人家都懒得跟我们说一声原因,怎么问都往数据不一致问转载 2014-10-27 09:52:06 · 11646 阅读 · 0 评论 -
spring boot +Swagger-ui 自动生成API文档(转)
spring boot +Swagger-ui 自动生成API文档 随着互联网技术的发展,现在的网站架构基本都由原来的后端渲染,变成了:前端渲染、先后端分离的形态,而且前端技术和后端技术在各自的道路上越走越远。这样后段开发好了api 之后就要提交api 文档给前端的朋友。给前端的api 文档各个公司有各个公司的要求,有的是word 有的是 md 文档,或者是 postman 的一个连接...转载 2018-10-09 14:36:29 · 1567 阅读 · 0 评论 -
springboot的缓存技术(转)
springboot的缓存技术 引子我门知道一个程序的瓶颈在于数据库,我门也知道内存的速度是大大快于硬盘的速度的。当我门需要重复的获取相同的数据的时候,我门一次又一次的请求数据库或者远程服务,导致大量的时间耗费在数据库查询或者远程方法的调用上,导致程序性能的恶化,这更是数据缓存要解决的问题。spring 缓存支持spring定义了 org.springframework.cac...转载 2018-10-09 16:10:19 · 633 阅读 · 0 评论 -
Spring @Conditional注解 详细讲解及示例(转)
Spring @Conditional注解 详细讲解及示例前言:@Conditional是Spring4新提供的注解,它的作用是按照一定的条件进行判断,满足条件给容器注册bean。@Conditional的定义: //此注解可以标注在类和方法上 @Target({ElementType.TYPE, ElementType.METHOD}) @R...转载 2019-08-19 10:54:55 · 193 阅读 · 0 评论 -
@Retryable(spring的重试机制)(转)
@Retryable注解被注解的方法发生异常时会重试value:指定发生的异常进行重试include:和value一样,默认空,当exclude也为空时,所有异常都重试exclude:指定异常不重试,默认空,当include也为空时,所有异常都重试maxAttemps:重试次数,默认3backoff:重试补偿机制,默认没有一、springboot中使用先...转载 2019-03-28 18:26:58 · 742 阅读 · 0 评论 -
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移到Cassandra,因为Cassand...转载 2019-01-15 11:55:01 · 145 阅读 · 0 评论 -
java过滤特殊字符的正则表达式
java过滤特殊字符的正则表达式 /** * 正则表达式匹配字符 * @param str * @param regEx * @return */ public static boolean matches(String str,String regEx){ if(StringUtils.isBlank(s...转载 2019-01-15 11:48:57 · 2397 阅读 · 0 评论 -
JPA解决sql查询过多的问题
关于JPA、hibernate“臭名昭著”的n+1次查询导致的性能问题问题重现举例:查询列表页面,当查询涉及多表关联时,即页面中除显示主表字段,还显示从表字段期望:一个sql完成,即select a.c1, a.c2.... from a, b where a.id = b.fkid ......实际:JPA会发送多个sql完成,第一条语句查询主表,后面发送n条语句查询子表,即所谓...转载 2019-01-14 10:34:30 · 4548 阅读 · 0 评论 -
JPA--增加删除
JPA--增加删除 编写原生的sql插入删除语句一定要加入事务!!!! @Modifying @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class) @Query(value = “insert into topic_good values(?1,?2)”,nativeQuer...转载 2019-01-14 00:01:54 · 1350 阅读 · 0 评论 -
spring注解@PostConstruct
spring注解@PostConstruct@PostConstruct是java5的时候引入的注解,指的是在项目启动的时候执行这个方法,也可以理解为在spring容器启动的时候执行,可作为一些数据的常规化加载,比如数据字典之类的。 @PostConstruct protected void initialize() { try { lo...转载 2019-01-18 12:00:23 · 617 阅读 · 0 评论 -
分布式系统唯一ID生成方案汇总
@Id @GeneratedValue(strategy = GenerationType.AUTO,generator = "snowFlakeId") @GenericGenerator(name = "snowFlakeId", strategy = "com.lakala.eagleyesrisk.common.utils.SnowflakeId") @Colum...转载 2019-01-11 11:29:45 · 4269 阅读 · 2 评论 -
pringboot 读取properties中的list和map数据
pringboot 读取properties中的list和map数据 1 自定义citycode.properties#List propertiescitycode.list[0]=wwwcitycode.list[1]=localhostcitycode.list[2]=wuhancitycode.list[3]=tianjin#Map Propertiescit...转载 2018-12-26 09:41:42 · 1296 阅读 · 0 评论 -
Nagios远程监控软件的安装与配置详解(1)
Nagios远程监控软件的安装与配置详解(1)2007-06-04 16:59 田逸 51CTO.com 我要评论(0) 字号:T |T作为系统管理员,我最担心那些重要的在线系统在我不知情的情况下停机或者停止网络服务,要改变这种被动局面,这里作者推荐一款网络监控软件Nagios,文中讲述作者使用Nagios的过程以及心得,希望对初学者有所帮助。AD:2013转载 2014-01-14 12:22:57 · 898 阅读 · 0 评论 -
WEB组件化
1. 为什么要做组件化?无论前端也好,后端也好,都是整个软件体系的一部分。软件产品也是产品,它的研发过程也必然是有其目的。绝大多数软件产品是追逐利润的,在产品目标确定的情况下,成本有两个途径来优化:减少部署成本,提高开发效率。减少部署成本的方面,业界研究得非常多,比如近几年很流行的“去IOE”,就是很典型的,从一些费用较高的高性能产品迁移到开源的易替换的产品集群,又比如使用Linu转载 2013-12-09 13:47:38 · 1891 阅读 · 0 评论 -
项目启动时加cache
package com.yougou.logistics.tms.web.controller;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.ArrayList;import java.util.HashMap;import java.util.Lin原创 2013-11-29 10:15:57 · 854 阅读 · 0 评论 -
采用什么架构,才能够承受大访问量
一般情况下,架构分两种来讨论的,一种是开发架构,一种是部署架构部署架构,就是开发完的程序在实际运行环境下,通过负载均衡,DNS轮询,SquID等等来减轻单台服务器负载,达到性能优化的目的这里大家估计更想了解的是开发上的架构我对这个的观点是,所有的架构都是死的,而性能优化策略是活的,我在开发中,所有的东西都不是一定要按照什么固定的模式,去死开发,更多的是针对需要优化的信息进行转载 2013-11-25 23:57:10 · 877 阅读 · 0 评论 -
说说大型高并发高负载网站的系统架构
鄙人先后在CERNET做过拨号接入,在Yahoo&3721搞过搜索前端,在猫扑处理过mop.com的架构升级,在6.cn视频网 站从事开发工作,还在多年的工作中接触和开发过不少大中型网站的模块,因此在大型网站应对高负载和并发的解决方案上有一些积累和经验,希望和大家一起探 讨。一个小型的网站,比如个人网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的转载 2013-11-24 21:25:46 · 589 阅读 · 0 评论 -
大型网站系统架构分析
大型网站系统架构分析千万级的注册用户,千万级的帖子,nTB级的附件,还有巨大的日访问量,大型网站采用什么系统架构保证性能和稳定性?首先讨论一下大型网站需要注意和考虑的问题。数据库海量数据处理:负载量不大的情况下select、delete和update是响应很迅速的,最多加几个索引就可以搞定,但千万级的注册用户和一个设计不好的多对多关系将带来非常严重的性能问题。另外在高U转载 2013-06-29 02:48:34 · 632 阅读 · 0 评论 -
各大网站架构总结笔记
评论- 427 各大网站架构总结笔记记得在大学里不止一次关注网站架构方面的东西了,但每次都是泛泛了解,也没有着重记录,一段时间后对各种架构的思想也就模糊了。这几天不知怎么的又心血来潮(可能是快毕业了冲动了)想深入了解一下网站架构方面的知识,并想通过这次来总结一下网站架构,记录一点东西供自己以后翻阅,也给那些希望了解这方面知识的朋友提供一点点有用的信息,下面是转载 2013-06-29 02:35:20 · 519 阅读 · 0 评论 -
一步步构建大型网站架构
之前我简单向大家介绍了各个知名大型网站的架构,亿万用户网站MySpace的成功秘密、Flickr架构、YouTube网站架构、PlentyOfFish 网站架构学习、WikiPedia技术架构学习笔记。这几个都很典型,我们可以从中获取很多有关网站架构方面的知识,看了之后你会发现你原来的想法很可能是狭隘的。 今天我们来谈谈一个网站一般是如何一步步来构建起系统架构的,虽然我们希望网站转载 2013-06-01 00:40:27 · 475 阅读 · 0 评论 -
Java Web 高性能开发,第 2 部分: 前端的高性能
引言在前端优化的第一部分中,主要讲解了对静态资源的一些优化措施,包括图片压缩、CSS Sprites 技术、GZIP 压缩等。这一部分,本文将讲解前端优化里重要的 Flush 机制、动静分离、HTTP 持久连接、HTTP 协议灵活应用、CDN 等。结合这些技术或思想,相信会使 Java Web 应用程序的性能更上一层楼。回页首Flush 机制的使用实际上在 We转载 2013-06-01 00:19:39 · 1140 阅读 · 0 评论 -
各大网站架构总结笔记(续)(转)
各大网站架构总结笔记(续)(转)前段时间给大家介绍过各大网站架构总结笔记(MySpace、Flickr、YouTube、PlentyOfFish、WikiPedia),喜欢架构的朋友可以去看看。这两天,我又陆续从互联网上整理了几个优秀网站的架构信息,并将部分文章整理到了自己的另一个博客,今天把它们拿出来分享给大家,希望能给大家带来一点启发,另外,欢迎一起讨论,有比较好的架构信息大家也可转载 2013-06-29 02:07:38 · 661 阅读 · 0 评论 -
dubbo学习
dubbo学习转 http://zy116494718.iteye.com/blog/1830138 Dubbo是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,000,000+次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点: 那么,Dubbo是什么?Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务转载 2013-12-13 16:09:20 · 784 阅读 · 0 评论 -
Maven+spring+ibatis+struts2.0+MQ+Memcached 项目构建
1>Maven一些基本命令:打包到eclipse中的命令:mvn eclipse:eclipse打包到eclipse中的命令:mvn eclipse:clean eclipse:eclipse2:建立环境变量:在path 目录下建立:D:\apache-maven-3.0.3\bin到你新建的文件夹下。例如:你新建了一个文件夹:F:\WorkSpace\CMD进入:原创 2013-12-17 19:33:55 · 906 阅读 · 0 评论 -
转:Maven常用命令
Maven库:http://repo2.maven.org/maven2/Maven依赖查询:http://mvnrepository.com/Maven常用命令: 1. 创建Maven的普通java项目: mvn archetype:create -DgroupId=packageName -DartifactId=projectName转载 2014-02-27 15:31:05 · 659 阅读 · 0 评论 -
Redis安装整理(window平台和Linux平台)
Redis安装整理(window平台和Linux平台)博客分类: 云计算 window平台Redis安装 redis windows安装文件下载地址:http://code.google.com/p/servicestack/wiki/RedisWindowsDownload#Download_32bit_Cygwin_builds_for_Windows转载 2014-03-05 11:13:44 · 743 阅读 · 0 评论 -
一、MyBatis简介与配置MyBatis+Spring+MySq
http://limingnihao.iteye.com/blog/781671lMyBatis学习 之 一、MyBatis简介与配置MyBatis+Spring+MySqlMyBatis学习 之 二、SQL语句映射文件(1)resultMapMyBatis学习 之 二、SQL语句映射文件(2)增删改查、参数、缓存MyBatis学习 之 三、动态SQL语句MyBatis转载 2014-02-26 18:16:00 · 569 阅读 · 0 评论 -
maven构建spring mvc项目 + Mybatis整合
分类: Java技术 spring mvc MAVEN 2013-10-27 00:51 1660人阅读 评论(0)收藏 举报一、新建项目1、File>New>Other>Maven>Maven Project, 点击Next 2、选择项目保存路径。然后点击Next。 3、选择项目类型,在Artifact Id中选择maven-a转载 2014-02-26 18:12:24 · 987 阅读 · 0 评论 -
减少http请求数说起
前一阵,给我一个学生做培训,讲到一点点性能优化,然后我很后悔我误导了她.我给她讲减少http请求是多么重要,如何重要,为什么重要,还举了例子来说明这对于大型网站来说是多么重要,讲的头头是道,有理有据,最后把她说的服服帖帖,一切看起来理所当然.但是….事情没有那么简单,就像做技术一样,其实去了解一个技术很简单,但是要懂得如何运用这个技术就不是每个人都可以做到的了.1.理所当然我们是这样想的转载 2014-02-01 02:50:34 · 1979 阅读 · 0 评论 -
linux下 Confluence4.1.9安装与破解教程
Atlassian Confluence(简称Confluence)是一个专业的wiki程序。它是一个知识管理的工具,通过它可以实现团队成员之间的协作和知识共享。Confluence 不是一个开源软件,非商业用途可以免费使用。Confluence使用简单,但它强大的编辑和站点管理特征能够帮助团队成员之间共享信息,文档协作,集体讨论。 目前,Confluence被用于广泛地用于项目团队,开发团队转载 2013-12-23 18:06:39 · 1906 阅读 · 0 评论 -
各大网站架构分析
1. PlentyOfFish 网站架构学习http://www.dbanotes.net/arch/plentyoffish_arch.html采取 Windows 技术路线的 Web 2.0 站点并不多,除了 MySpace ,另外就是这个 PlentyOfFish。这个站点提供 “Online Dating” 服务。一个令人津津乐道的、惊人的数据是这个只有一个人(创建人Marku转载 2013-06-29 02:08:40 · 702 阅读 · 0 评论