- 博客(1531)
- 资源 (112)
- 问答 (3)
- 收藏
- 关注
翻译 NGINX速率限制-限流方案
目录NGINX速率限制如何工作配置基本速率限制处理突发无延迟排队高级配置示例白名单limit_req在一个位置包含多个指令配置相关功能记录中发送给客户端的错误代码拒绝所有到特定位置的请求结论原文地址:https://dzone.com/articles/nginx-rate-limitingNGINX最有用但经常被误解和配置错误的功能之一是速率限制。它允许您限制用户在给定时间段内可以发出的HTTP请求的数量。请求可以像GET对网站首页的POST请求或.
2021-04-04 22:35:40 1197 1
原创 从0到1实战微服务架构
目录读者基础微服务架构梳理https://www.coder4.com/homs_online/读者基础由于篇幅、精力所限,本书无法写成一本”零起点”教程。我假设读者具有至少2年的服务端工作经验,并且了解以下技术或原理:Git Maven & Gradle Docker & k8s Java Spring / Spring Boot 数据库: 如MySQL 消息队列: 如RabbitMQ 缓存系统: 如Memcached 内存数据库: 如Re...
2021-04-04 17:57:09 1640 4
转载 Google Guava Cache高效本地缓存
Guava Cache缓存Guava Cache 是Google Fuava中的一个内存缓存模块,用于将数据缓存到JVM内存中。 提供了get、put封装操作,能够集成数据源 ; 线程安全的缓存,与ConcurrentMap相似,但前者增加了更多的元素失效策略,后者只能显示的移除元素; Guava Cache提供了多种基本的缓存回收方式 监控缓存加载/命中情况通常,Guava缓存适用于以下情况: 愿意花费一些内存来提高速度。 使用场景有时会多...
2021-04-04 17:40:18 2618
转载 ELK日志分析系统架构演变
文章转自:https://www.jianshu.com/p/66db4d660d9cELK中文网: https://elasticsearch.cn/背景介绍随着软件行业的发展,软件系统的生产部署结构日趋复杂。对于一个分布式的系统,同一应用通常部署在不同的节点上,通过负载均衡的方式将请求分发到各个不同的节点进行处理。此时就会相对增加生产运维的复杂度,在进行问题查询的时候很难判断本次请求是在哪台机器上执行的,也就无法快速的对日志进行查询从而定位问题,因此,就需要对日志进行统一的处理...
2021-04-04 10:25:11 472
原创 Jenkins自动化持续集成部署项目管理工具
官方网站:https://www.jenkins.io/Jenkins,翻译名叫詹金斯。 自动化持续集成部署,是属于DevOps范畴的CI/CD。用户手册概述此页面概述了《 Jenkins用户手册》中的文档。如果要启动并运行Jenkins,请参阅安装Jenkins,以获取有关如何在支持的所选平台上安装Jenkins的过程。如果您是典型的Jenkins用户(具有任何技能水平),并且想进一步了解Jenkins的用法,请参阅使用Jenkins。有关这些核心Jenkins功能的更多..
2021-04-04 09:55:04 444 1
转载 AB测试-最佳方案测试
目录实验设计流量分配实验效果实验结束多个活动交集量化的实验设计业务迭代的同时,如何与自身的过去比较更为复杂的实验设计AB测试的目标是选出不同参考方案的优点进行选择,包括:用户体验,用户流量,性能等等,每个产品测试的点不一样AB测试的目标就会不同。百度上的解释更加偏向于开发web、APP:https://baike.baidu.com/item/AB%E6%B5%8B%E8%AF%95/9231223?fr=aladdin产品经理关注点在于用户体验和接受度:http:/
2021-04-03 13:22:12 3557
转载 搭建Prometheus监控报警系统
目录什么是Prometheus?Prometheus的特点架构图基本原理服务过程三大套件本飞猪教程内容简介安装准备一.安装Prometheus Server二.安装客户端提供metrics接口1.通过golang客户端提供metrics2.通过node exporter提供metrics三.安装pushgateway四.安装Grafana展示五.安装AlterManager什么是Prometheus?Prometheus是由SoundClo
2021-04-03 13:03:00 572
原创 Dapper大规模分布式系统问题跟踪系统
目录0.概述1. 介绍1.1 文献的总结2. Dapper的分布式跟踪2.1 跟踪树和span2.2 植入点2.3 Annotation2.4 采样率2.5 跟踪的收集2.5.1 带外数据跟踪收集2.6 安全和隐私考虑3. Dapper部署状况3.1 Dapper运行库3.2 生产环境下的涵盖面3.3 跟踪Annotation的使用4. 处理跟踪损耗4.1 生成跟踪的损耗4.2 跟踪收集的消耗4.3 在生产环境下对负载的影响4.
2021-04-03 12:53:12 736
原创 Prometheus开源系统监视和警报工具
目录什么是普罗米修斯?特征组件架构什么时候合适?什么时候不适合?https://prometheus.io/什么是普罗米修斯?Prometheus是最初在SoundCloud上构建的开源系统监视和警报工具包。自2012年成立以来,许多公司和组织都采用了Prometheus,该项目拥有非常活跃的开发人员和用户社区。现在,它是一个独立的开源项目,并且独立于任何公司进行维护。为了强调这一点并阐明该项目的治理结构,Prometheus在2016年加入了Cloud Nativ...
2021-04-03 12:47:25 339 1
转载 SAP安全白皮书: 开发测试环境安全解决方案
目录网络隔离与访问控制安全策略网络边界安全与生产环境边界安全策略业务边界VPN安全策略运维边界安全策略安全服务安全管理安全评估网站监控秘钥管理主机安全https://support.huaweicloud.com/swp-sap/sap_03_0009.html网络隔离与访问控制SAP生产环境安全解决方案如图1 生产环境安全解决方案全景图所示。图1 开发测试环境安全解决方案全景图根据业务特点,由于开发测试环境仅供...
2021-04-03 11:34:26 1806
转载 SAP安全白皮书:生产环境安全解决方案
目录网络隔离与访问控制安全策略网络边界安全业务边界VPN安全策略运维边界安全策略安全服务与开发环境测试边界安全策略安全管理安全评估网站监控主机安全https://support.huaweicloud.com/swp-sap/sap_03_0001.html网络隔离与访问控制SAP生产环境安全解决方案如图1 生产环境安全解决方案全景图所示。图1 生产环境安全解决方案全景图根据业务特点,参考企业安全实践,建议将云上系...
2021-04-03 11:21:34 883
原创 Dubbo RPC服务注册发现治理框架
官方地址:https://dubbo.apache.org/zh/背景本文介绍了网站应用的演进随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。单一应用架构当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。此时,用于简化增删改查工作量的数据访问框架(ORM)是关键。垂直应用架构当访问量逐渐增大,单一应用增加机器带来的加速度越来越小,提升效率..
2021-03-30 14:44:09 263
原创 Sentinel微服务流量控制熔断降级及稳定性监控IO框架
目录Sentinel 介绍Sentinel 的历史Sentinel 基本概念资源规则Sentinel 功能和设计理念流量控制熔断降级系统负载保护Sentinel 是如何工作的快速开始本地Demo1. 引入 Sentinel 依赖2. 定义资源3. 定义规则4. 检查效果5. 启动 Sentinel 控制台公网 Demo1. 下载 Demo jar2. 开通 AHAS 流控降级并获取启动参数3. 启动 demoSentin
2021-03-30 14:35:43 1608
原创 Nacos微服务注册发现、配置和管理微服务
目录Nacos介绍什么是 Nacos?Nacos 地图Nacos 生态图Nacos 概念地域可用区接入点命名空间配置配置管理配置项配置集配置集 ID配置分组配置快照服务服务名服务注册中心服务发现元信息应用服务分组虚拟集群实例权重健康检查健康保护阈值Nacos 架构基本架构及概念服务 (Service)服务注册中心 (Service Registry)服务元数据 (Servic.
2021-03-30 11:17:36 1968
原创 Spring源码设计模式:策略模式(Strategy Pattren)
目录策略模式避免写IF逻辑语句Spring源码策略模式策略解析工具类版本解析策略Handler命名映射策略参考资料策略模式在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法。===介绍===意图:定义一系列的算法,把它们一个个封装起来, 并且使...
2021-03-26 11:24:37 1208
原创 Spring源码设计模式:模板方法(Method Template)之下篇
目录模板模式JmsTemplateTransactionTemplateJndiTemplate参考文章上篇:Spring源码设计模式:模板方法(Method Template)之上篇模板模式在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。在spring源码中使用到模板模式的有以下几类(在Spring中大多数模板方式都是行为接
2021-03-25 21:35:42 459 1
原创 Spring源码设计模式:模板方法(Method Template)之上篇
模板模式在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。在spring源码中使用到模板模式的有以下几类:RestTemplate Http Restful接口请求模板 AsyncRestTemplate 异步Http Restful接口请求模板 JdbcTemplate JDBC关系型数据库操作模板 HibernateTemplate Hib.
2021-03-25 16:33:09 1731
转载 DDD领域驱动设计基本理论知识总结
领域驱动设计之领域模型加一个导航,关于如何设计聚合的详细思考,见这篇文章。2004年Eric Evans 发表Domain-Driven Design –Tackling Complexity in the Heart of Software (领域驱动设计),简称Evans DDD。领域驱动设计分为两个阶段:以一种领域专家、设计人员、开发人员都能理解的通用语言作为相互交流的工具,在交流的过程中发现领域概念,然后将这些概念设计成一个领域模型;由领域模型驱动软件设计,用代码来实现该领域模型;
2021-03-09 11:59:18 1376 1
翻译 Java平台标准版HotSpot虚拟机垃圾收集优化指南
文档地址:https://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/index.html前言受众 文档可访问性 相关文件 约定1引言2人机工程学垃圾收集器,堆和运行时编译器的默认选择 基于行为的调整 最大暂停时间目标 吞吐量目标 足迹目标 调整策略3代性能考量 测量4调整世代大小总堆 年轻一代 幸存者空间大小 5个可用收藏家选择收集器6并行收集器世代 并行.
2021-03-08 10:47:52 193
原创 坚持持续学习
职业,是我们一辈子持之以恒去做的事情,既可以实现物质层面的养家糊口,又可以获得精神层次的荣誉和成就。人,一旦没有愿望和憧憬就会失去奋斗的动力,想要有大的出息也绝不可能。聪明人都会有自己的规划,把规划变成一个个具体的目标并分阶段去执行,最终实现自己的使命和愿景。目标!执行!结果!这三者是职场中最重要的法则,做事情中蕴含着做人的道理,遇事想方法,行事有章法,完事有总结。职业规划实际上就是要有一个初步的构想,在其位谋其事专其志。做事有一个定性,而不是三天打鱼两天晒网地混日子,所以企业招聘中很多情况下人力资源会涉及
2021-03-07 19:49:01 107 1
原创 Arthas阿里线上问题排查工具
官网地址:https://arthas.aliyun.com/doc/index.htmlArthas(阿尔萨斯) 能为你做什么?Arthas是Alibaba开源的Java诊断工具,深受开发者喜爱。当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决: 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception? 我改的代码为什么没有执行到?难道是我没 commit?分支搞错了? 遇到问题无法在线上 debug,难道只能通过加日志再重新发..
2021-03-03 14:49:22 2132 1
原创 magic-api 一个接口快速开发框架
官网地址:https://ssssssss.org/开源文章说明:https://www.oschina.net/news/131452/magic-api-0-7-1-released快速开发无需定义Controller、Service、Dao、Mapper、XML、VO等Java对象,真正的快速开发!在线IDE提供Web页面,在线编写脚本,在线DEBUG,脚本编辑之后无需重启,自动热更新!丰富功能热更新、代码生成、分页、Redis、MongoDB、各种函数库...
2021-03-01 09:24:38 3348 1
原创 SpringBoot 中使用spring-boot-devtools不可应用至生产环境
如题:这个问题是开发中引入生产环节的问题,如果程序存在Bug,那么spring-boot-devtools在抛出未处理的异常时会出现应用重启过程,导致数据源关闭。这里提出两个生产中要非常注意的问题:try{}finlly{}没有catch,会导致严重吞掉异问题; 项目中使用了spring-boot-devtools热部署插件导致异常情况下应用重启(此时Druid数据源关闭,无法再执行更新);Maven scope配置以下内容参考:https://maven.apache.org/pom.htm.
2021-02-26 18:06:11 2525 1
原创 Apache Hadoop3.2.2与Spark3.0.0环境安装
基础环境说明系统环境:centos8主机名:www.boonya.cnvi /etc/hosts127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 www.boonya.cn boonya.cn::1 localhost localhost.localdomain localhost6 localhost6.localdomain6JDK基础环境安装下载并解压.
2021-02-17 15:20:56 3340
原创 CentOS虚拟机镜像7.x和8.x下载资源
centos-7.xhttp://isoredirect.centos.org/centos/7/isos/x86_64/centos-8.xhttp://isoredirect.centos.org/centos/8/isos/x86_64/
2021-02-15 19:03:55 996
原创 建议使用RPC替代企业应用间通信RESTFul接口服务调用
Restful已经用得太多了,是不是有种被接口压垮的感觉? 接口还没好,您就等着吧。摸鱼抓虾,问兄弟好了没,答还没好,今天啥事儿没干,1,2,3,4,周五好了,你这儿疯狂测试一堆问题,ok周末加加班,这就是常态。RPC是远程过程调用(Remote Procedure Call)的缩写形式。SAP系统RPC调用的原理其实很简单,有一些类似于三层构架的C/S系统,第三方的客户程序通过接口调用SAP内部的标准或自定义函数,获得函数返回的数据进行处理后显示或打印。 RPC主要是解决软件多进程之间的调用问题,而要
2021-01-24 23:23:30 887 1
原创 OpenFaaS-无服务器应用
https://docs.openfaas.com/OpenFaaS®使开发人员可以轻松地将事件驱动的功能和微服务部署到Kubernetes,而无需重复的样板代码。将您的代码或现有二进制文件打包到Docker映像中,以获得具有自动扩展和指标的高度可扩展的端点。重点说明通过UI门户易于使用,一键安装 为Linux或Windows用任何语言编写函数,并以Docker / OCI图像格式打包 可移植-使用Kubernetes或容器在现有硬件或公共/私有云上运行 提供YAML格式的CLI以用于
2021-01-22 11:18:09 452
原创 SpringBoot集成Redisson分布式锁
Redisson是Redis的集群分布式解决方案。application.yml配置####=======分布式REDIS配置===========redisson: # 是否开启分布式REDIS服务 enabled: true # Redis服务地址 如果集群使用","进行分割 serverAddress: redis://192.168.1.111:6381 # redis访问密码 serverPassword: xxx # 单例使用数据库示例 databa.
2020-12-29 18:39:08 419 3
原创 IDEA使用Gradle编译Spring源码
本文使用的IDEA为社区版本。源码编译地址(自行拉取到本地或fork到自己的git仓库):https://github.com/Nuclear-Core-Learning/spring-frameworkIDEA下载地址:https://www.jetbrains.com/idea/download/other.html前言spirng-framework源码从5.0开始使用gradle作为编译工具 spirng-framework源码编译非常考验网速(网络抖动都有可能导致编译失败) sp.
2020-12-18 12:40:34 2061
转载 Linux 系统密码策略设置
先讲怎么使用,后面有理论教程,先知其然再知其所以然1. 禁止使用旧密码vi /etc/pam.d/system-auth找到同时有 “password” 和 “pam_unix.so” 字段并且附加有 “remember=5” 的那行,它表示禁止使用最近用过的5个密码(己使用过的密码会被保存在 /etc/security/opasswd 下面)。password sufficient pamunix.so sha512 shadow nullok tryfirstpass useauthto
2020-12-15 11:02:00 9525 2
转载 Kotlin 环境安装及语法教程
Kotlin 教程Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,被称之为 Android 世界的Swift,由 JetBrains 设计开发并开源。Kotlin 可以编译成Java字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在Google I/O 2017中,Google 宣布 Kotlin 成为 Android 官方开发语言。Kotlin 教程Kotlin IntelliJ IDEA 环境搭建 Kotlin Eclipse .
2020-12-11 18:06:15 1289 2
翻译 Spring Boot 和 Kotlin构建web应用程序
原文地址:https://spring.io/guides/tutorials/spring-boot-kotlin/目录创建一个新项目使用Initializr网站使用命令行使用IntelliJ IDEA支持构建方式了解生成的应用程序编写您的第一个Kotlin控制器使用JUnit 5进行测试用Kotlin编写JUnit 5测试测试实例生命周期创建自己的扩展JPA的持久性实施博客引擎公开HTTP API配置属性结论本教程向您展示如何通.
2020-12-11 17:29:14 892 1
转载 Spring与Serverless 相关服务了解
目录前端开发模式的演进Serverless 常见服务商提供的解决方案基于 Serverless 的前端开发模式serverless带来的价值serverless实践总结serverless - less is moreSpring 对Serverless的实践无服务器什么是无服务器?无服务器特性?无服务器与传统堆栈服务即服务(FaaS)传统应用为什么选择Spring和Serverless?详细说明:Spring Cloud功能最近关于 S...
2020-12-11 11:33:17 1966
原创 在linux环境下离线安装Nginx
Nginx安装需要gcc-c++编译环境,另外还需要安装Nginx依赖包。下载gcc-c++打开gcc-c++ rpm下载地址:https://pkgs.org/download/gcc-c++选择对应的Linux CentOS版本进行下载:最新的选择CentOS7,为了保险起见,我们选择最多的rpm支持版本讲这些rpm逐个下载即可。下载时需要进入到每一个页面对应的Download:注:为了不出错,将以上列举的*.rpm都下载。安装gc...
2020-12-10 16:03:12 794
原创 Java队列和线程池消费处理的简单设计
目录实现目标目标分析线程池设计队列与线程池结合实现目标队列缓冲业务数据 线程空闲忙碌识别 任务处理的进度控制目标分析进度控制:需要将队列里面总任务和线程消费的任务进行记录,实现一个completed/total 这样的控制。线程池控制:线程池使用计数器,在完成任务和新增任务进行原子操作维护计数器数量。线程池设计线程池实际上就是一个线程的池化处理,一般会初始化几个线程,需要使用线程时从池子里面拿,池子里面的总容量占用多少可以用来标记线程繁忙和空闲。线程池的设...
2020-12-03 13:08:05 1572
原创 DPDK 网络数据包转发处理
https://www.intel.cn/content/www/cn/zh/communications/data-plane-development-kit.htmlhttps://www.dpdk.org/软件简介Intel® DPDK 全称 Intel Data Plane Development Kit,是 Intel 提供的数据平面开发工具集,为 Intel architecture(IA)处理器架构下用户空间高效的数据包处理提供库函数和驱动的支持,它不同于Linux系统以.
2020-11-23 22:25:36 1309 1
原创 Hashtable和ConcurrentHashMap如何实现线程安全
未做同步控制时,代码在多线程下是安全的吗?代码执行都是靠线程调度执行的,默认情况下就是多线程的,所以不做同步控制理论上代码在多线程情况下存在线程安全问题。我们可以通过对方法和变量操作加锁、使用线程安全的方法和操作方式解决。HashMap的是线程安全的吗?非线程安全,本身没有任何线程安全的控制。比如put,remove这些操作都是普通方法。那么线程安全的Map-HashTable是如何实现线程安全的呢?HashTable在和数据本身操作的方法上都加了一个synchronized关键字,
2020-11-23 22:07:43 479
原创 服务安全:如何保证服务器不断电数据不丢失?
服务安全最重要的是数据安全,大多数灾备都是保证服务高可用和数据安全性。服务不断电方案:异地多活灾备 UPS不断电异地多活灾备阿里云数据库异地多活解决方案使用以下阿里云核心产品,按照架构设计原则提供数据层多活解决方案。DRDS按照之前说的业务数据拆分的维度,阿里云DRDS有两种集群分别支持买家维度与卖家维度:unit 模式的DRDS集群:多地用户分别在本地域读写本地域的数据,且本地域的数据会和中心数据做双向同步。 copy 模式的DRDS集群:此集群数据在中心数据库写,完成后全.
2020-11-19 09:17:46 1662 1
原创 HashMap数据结构与算法
目录HashMap的特点HashMap JDK1.8以前(链表解决hash碰撞-冲突)HashMap JDK1.8以后(红黑树-二叉树解决hash碰撞)HashMap的特点数组[Entry]、链表[Entry[]]、红黑树(jdk1.8 链表长度大于8时触发)快速存储(put) 快速查找(时间复杂度O(1)) 可伸缩(loadFactor=0.75, default size=16 ,2倍扩容:16,16*0.75->32,32*0.75->64,64*0.75-&.
2020-11-16 22:21:35 276
转载 ab-Apache HTTP服务器基准测试工具
http://httpd.apache.org/docs/2.0/programs/ab.htmlab是用于对Apache超文本传输协议(HTTP)服务器进行基准测试的工具。它旨在使您对当前的Apache安装如何执行有一个印象。这尤其向您显示Apache安装每秒能够处理多少个请求。概要ab[ -Aauth-username:password] [ -cconcurrency] [ -Ccookie-name=value] [ -d] [ -ecsv-file] [ -g...
2020-11-13 23:08:10 342
SpringBoot-Gradle-Maven-Java-Groovy
2018-06-14
SwaggerWebAPI
2018-05-15
SDL2_ttf-2.0.14-win32-x64 & SDL2_ttf-2.0.14-win32-x86 二进制运行文件dll
2018-03-09
JTT1078-2016道路运输车辆卫星定位系统视频通信协议(扫描版)
2017-12-29
Adobe Flash Professional CS6 Flash教学实践源文件
2017-01-28
Mybatis Mapper生成器示例
2016-09-28
百度对象存储BOS
2015-08-18
openhtmltopdf 解决中文字体和A4显示模板
2023-10-26
Postgresql PipelineDB定时增量统计事件数据.vsdx
2020-10-16
平台产品体系.vsdx
2020-09-22
Springboot 结合Apache Spark 2.4.4与Scala 2.12 集成示例
2020-09-02
NGINX HTTP负载均衡操作及优化手册.docx
2019-12-27
Java虚拟机调优及问题排查手册.docx
2019-12-24
AggregationController.java
2019-12-24
Spring-Struts2项目环境搭建
2019-11-25
spring3.0.5.zip
2019-11-14
Spring3.0.5扩展支持AOP获取HttpServletResponse
2019-11-09
web-requirejs.zip
2019-10-18
MySQL单主库多继承从库数据备份测试
2019-05-07
MySQL指定表数据库和表同步并解决跨网络问题方案
2019-04-30
Windows Service项目示例可执行安装卸载
2018-06-25
C# OCX (ActiveX)log4net日志不写目录怎么回事呢?
2018-06-07
已知视屏的加密时的pts时间戳,怎么计算播放时的pts?
2018-02-28
Ubuntu server 15.0.4安装Redis make命令不能执行
2015-08-19
TA创建的收藏夹 TA关注的收藏夹
TA关注的人