3 金陵砍柴人

尚未进行身份认证

我要认证

最好的老师是兴趣,其次是耻辱

等级
TA的排名 9w+

策略模式+装饰器模式

妙计接口public interface SyncActionHandler { void handleSyncAction(OpenSyncBizDataVO data);}妙计实现类1public class OrgDeptCreateSyncActionHandler implements SyncActionHandler { @Autowired private DeptService deptService; @Override public

2020-08-25 14:39:03

精确计算对象的大小——细就完事了

数据类型大小boolean1 bytesbyte1 bytesshort2 byteschar2 bytesint4 byteslong8 bytesfloat4 bytesdouble8 bytesOOPordinary object pointer普通对象指针启动CompressOops后,会压缩的对象:1.每个class的属性指针(静态成员变量)2.每个对象的属性指针3.普通对象数组的每个元素指针不会压...

2020-08-24 17:50:19

ElasticSearch是真滴香—附带一份ES取代InfluxDB的测试性能报告

Version:kibana-7.8.0elasticsearch-7.8.0启动ES启动成功校验http://127.0.0.1:9200/{ "name": "DESKTOP-AANKMQ7", "cluster_name": "elasticsearch", "cluster_uuid": "Gh9mhXcpR-eQsU-QLQVaZw", "version": { "number": "7.8.0", "build_flavor": "default",

2020-07-23 20:15:15

分库分表-ShardingSphere-ShardingJDBC

分片和分区的区别Sharding 分片Partition分区存储依赖可跨越DB 可跨越物理机器可跨越表空间,不能跨DB存储数据划分常见为时间、范围、面向服务等范围、Hash、列表、混合分区等存储方式分布式集中式扩展性Scale Out (水平扩展)Scale Up(垂直扩展)可用性无单点存在单点(DB本身)价格低廉适中(DAS)甚至昂贵(SAN)应用场景Web 2.0网站多数传统应用ShardingSpherev

2020-06-30 10:35:52

分库分表

前言公司最近在搞服务拆分的内容,由于服务拆分必然会带来数据库的拆分,同时公司业务单表数据最高已经达到了亿级,于是乎考虑分库分表来对库进行拆分所以将分库分表提上日程必然是势在必行特此记录一下对分库分表的研究历程何谓分库分表,字面意思就给人一种手艺活的感觉既然是一门手艺活,那么当然得先从姿势讲起(手动❀鸡)垂直垂直分表:大表拆分成小表,由于大表有很多字段,但是有部分简单查询时这些字段并不常用,因此可以拆分成基础信息表和详细信息表。垂直分库:大库拆分成小库,一般是按照服务来进行拆分,比如订

2020-06-24 11:14:15

开放平台设计选型&代码编写

最近在着手开发开放平台的设计选型工作,以下来唠唠技术上选型的心路历程:相关阅读:早期Oauth2.0解释:阮一峰:理解OAuth 2.0最新Oauth2.0简单解释:阮一峰:OAuth 2.0 的一个简单解释阮一峰:OAuth 2.0 的四种方式阮一峰:GitHub OAuth 第三方登录示例教程选型那时的我面临着两种抉择:Spring SecurityShiro + O...

2020-03-09 17:40:51

InfluxDB-Java初体验

打败我的从来不是天真,而是无邪前提注意点总结1.where子句后面的值如果是字符串,必须用如下所示的单引号给我包起来!‘’2.order by 后面仅支持time字段3.select 若出现tag列,则field列必须出现一个,换而言之,不能仅出现tag列time使用influxDB时,总是避免不了查询一段时间范围内的数据作为一名练习时长两年半的的JAVA后端攻城狮写出如下S...

2019-12-23 15:46:35

Kubernetes-HPA初体验

what:什么是HPA?缩写:HPA全称:Horizontal Pod Autoscaling中文:POD水平自动伸缩WHY:为什么需要HPA?在实际生产中,随着业务量的上升,POD的负载也随之上升,我们的老办法是手动伸缩POD:将名为foo中的pod副本数设置为3kubectl scale --replicas=3 rs/foo但是不乏有这样的场景:某一家商铺临时举行了一次秒杀活...

2019-11-14 14:45:08

prometheus-operator

a long time ago在下已经在K8S内成功部署了一个prometheus+alertmanager+grafana的监控系统并通过K8S service 的DNS方式成功接入web应用的pod但是这只能监控一个pod,并且每次接入新的pod还得配置同时也不能完整的监控整个K8S于是开启了漫长的面向谷歌编程之路经过不懈,发现了prometheus-operator这个宝贝玩意...

2019-11-01 14:05:02

Spark

bin/spark-submit \ --master k8s://https://10.4.101.85:6443 \ --deploy-mode cluster \ --name spark-pi \ --class org.apache.spark.examples.SparkPi \ --conf spark.kubernetes.namespace...

2019-10-29 20:24:01

稳定性测试报告要求

系统部署架构降级设计系统压测系统部署架构非设计架构必须使用SLB不能出现单点RDS高可用,支持主备业务日志统一分析降级设计步骤:梳理功能模块,按照功能重要程度,用户侧更重要实现时尽量不要和业务耦合,确保开关高可用对优先级低的增加开关,可随时关闭低优先级功能,确保高优先级可用,因为往往低优先级会连带高优先级发生雪崩效应开关演练,要确保开关生效,要对生产环境下进行演练...

2019-10-12 18:17:13

RateLimit:限流

3W法则:what:什么是限流顾名思义限制流量why:为什么我们的服务需要限流用户量病毒增长微博热搜/淘宝双十一竞品爬虫恶意攻击how:如何限流一般可以根据服务的某项核心指标,如QPS,来决定是否将后续的请求拦截。比如设定某系统1s的QPS阈值为100,当1s内的QPS达到了110,那么差值的10个请求则会被拦截,直接返回503状态码:服务器繁忙。根据以上结果导向论,又衍生...

2019-09-27 10:41:35

论springboot如何优雅地集成redis+cache?

dependenceSpring Data Redis + 连接池<!--Spring Data Redis--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis&lt...

2019-09-06 14:15:42

大数据:安装Hadoop(附带jdk安装步骤)

1安装 a)下载jdk-8u65-linux-x64.tar.gz b)tar开 $>su centos ; cd ~ $>mkdir downloads $>cp dk-8u65-linux-x64.tar.gz ~/downlooads $>tar -xzvf jdk-8u65-linux-x64.tar.gz c)创建/soft文件夹 $&...

2019-02-27 11:27:50

Linux学习:yum安装和相关指令&防火墙开关

Yum的介绍Yum的介绍(切换到root用户)Yum 全称为 Yellow dog Updater, Modified,它是一个在线的软件安装命令。能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。例如我们需要安装一个软件A,而软件...

2019-02-27 11:08:46

GitLab集成Docker和K8S完成CI/CD持续集成部署工作

1.安装gitlab runner1.添加GitLab的官方存储库:curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh | sudo bash2.安装最新版本的GitLab Runnersudo yum install gitlab-runner3.验证...

2019-02-26 19:35:15

K8S(4):nginx demo

在k8s中新建一个nginx服务demo在k8s中新建一个nginx服务这个示例中,我们会在一个pod中封装一个nginx的镜像,然后通过deploy发布出来,并通过service暴露对外访问的接口在新版本的kubernetes中,引入了deployment对象,作为pod对象的管理器。通过deployment对象,可以实现pod的自动重启、状态监测等任务的自动化管理。线上应用都应该使用d...

2019-02-18 01:14:30

K8S(3):常用基本命令

K8S命令模式命令式模式kubectl create deployment nginx --image nginxkubectl run nginx --image nginx与docker命令类似,直接使用命令来创建k8s对象命令式对象配置模式通过配置文件来辅助命令kubectl create -f nginx.yamlkubectl delete -f nginx.ya...

2019-02-18 01:13:53

K8S(二):核心对象概念

k8s核心对象概念基本对象概念基本对象(偏底部,对用户操作比较少)PodPod是最小部署单元,一个Pod有一个或者多个容器组成,Pod中容器共享存储和网络,在同一台Docker主机上运行。ServiceService一个应用服务抽象,定义了Pod逻辑集合和访问这个Pod集合的策略。Service代理Pod集合对外表现是为一个访问入口,分配一个集群IP地址,来自这个IP的请求将负载均衡...

2019-02-18 01:12:53

K8S(1):K8S概述

K8S概述k8s介绍Kubenetes是Google在2014年6月开源的一个容器集群管理系统,使用go语言开发,kubenetes也叫k8s。是谷歌内部一个叫Borg的容器集群管理系统衍生出来的。k8s能干嘛主要用于自动化部署,扩展和管理容器应用,提供了资源调度、布署管理、服务发现、扩容所容、监控等一整套功能。kubernetes目标是让部署容器化应用简单高效。...

2019-02-18 01:11:50

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。