03 2020 档案
摘要:动作事件 鼠标事件 键盘事件 一般事件类处于 java.awt.event 包中. 动作事件 ActionListener 接口 动作事件由 ActionEvent 类定义, 最常用的是单击按钮后产生的动作事件, 可以通过 ActionListener 接口的类处理相应的动作事件. ActionLi
阅读全文
摘要:常见安装部署方式 Minikube 单节点, 微型, 仅供学习 二进制安装部署(生产首选,新手推荐) 难 使用 kubeadmin 进行部署,K8S的部署工具(相对简单,熟手推荐) 虚拟机准备 hostnamectl set-hostname ubuntu01.host.com 进到这个目录 /et
阅读全文
摘要:Pod/Pod控制器 Name / Namespace Label / Label选择器 Service / Ingress Pod / Pod 控制器 Pod: 能够被运行的最小逻辑单元. 边车(SideCar)模式, 类似那种带挎抖的摩托车. 1个 Pod 可以运行多个容器, 容器之间共享 UT
阅读全文
摘要:服务网格(Service Mesh)是一个基础设施层. 微服务架构标准. 微服务2.0, spring cloud 是 微服务1.0 现有的微服务架构, 是一个七拼八凑的. Istio -> Kubernetes Google, IBM, Lyft 联合打造 Go + gRPC + Istio 微服
阅读全文
摘要:Dockerfile: 配置文件, 可以 build 一个镜像. tar 文件: 类似虚拟机存储在磁盘上的文件. (这样就可以转存这个tar 从而实现镜像的 copy) 仓库: 远程仓库, 可以下载带环境变量的 docker, 比如带 nginx 比如我用 play with docker 玩的下载
阅读全文
摘要:各个微服务之间,推荐通过 http restful api 接口来进行调用. 每个微服务可以做成敏捷团队进行开发. ( 双11期间,后端业务并发量高的,增加高可用, duplicate + 负载均衡.) 用的比较多的微服务架构 dubbo 和 spring cloud spring boot(web
阅读全文
摘要:为什么会有中间件 随着数据库规模的增加,一个表里几千万的数据,导致查询缓慢,这时候就有一些解决方案: 历史表 垂直拆分(将部分列拆分成子表), 不降低记录数,但是整个表的数据量变小。 水平拆分(分区表,行数减少) 读写分离, 这时候需要一个中间件来把对数据的请求路由到不同的库上. 为什么中间件停止更
阅读全文
摘要:继续发展, 发现需要针对某以一业务做成一个 应用服务器集群. 集群 与 分布式的区别 演化过程: 混沌状态(所有东西都在一个server上) -> 各自独立server -> 集群化 -> 分布式改造 -> 多集群部署 每个集群自己还是分布式的. 用户量继续扩大,需要异地部署 拆分的维度 系统维度:
阅读全文
摘要:1. 面试技巧, 结构化问题 (4.15 之前) 着装, 不迟到 简历 work -> PDF(2页) 公司背景 -> 面试岗位 -> 岗位要求(自己的匹配度) 自信眼神交流 精心准备自我介绍 (时长, 重点(不要流水账), 不同岗位要求, 不一样的自我介绍) 回答问题,分点作答,条理清晰 分情况讨
阅读全文
摘要:移花接木 难以拒绝时, 先同意,但是要有先决条件 比如别人说愿不愿意把宝马车送给我,你的回答方案是,可以啊,但是前提是你的同意嫁给我。 比如有人问 任正非,是否可以让 CEO 有外国人担任,任正非回答可以啊, 有两个条件 1. 这个人要有能力 2. 这个人要在华为工作25年以上,首先去非洲无人岛干1
阅读全文
摘要:创建型: 单例 , 工厂 结构型: 适配器 欧洲旅行充电头转换, 笔记本电脑充电需求在欧洲. 我的笔记本电源接口是固定的, 而且我有充电需求. 在欧洲,政府提供的插座是固定的(跟国内不一样), 所以必须需要一个适配器协调一下. 代理 经纪人, 经济人要加代理费,歌星,跳舞等明星只管 performa
阅读全文
摘要:红绿灯, 根据不同的状态有不同的行为 类似 策略模式, 一个接口封装的是策略,然后不同的策略(类)实现这个接口 这里是, 一个接口封装的是状态,然后不同的状态(类)实现这个接口 参考 设计模式重点版 常用 10 中的. 用于解决系统中复杂对象的状态转换, 需要多外输出不同的行为 主要对象 Conte
阅读全文
摘要:策略模式比较简单 只是一堆具体的策略类, 共同实现了一个策略接口, 这样这些具体的策略类可以根据不同情况,动态的实现. 可以参考 设计模式重点版 (常用10个)
阅读全文
摘要:将动作的请求者 和 执行者 解耦. 将军命令士兵打仗, 但是将军并不知道是哪个士兵. 所以 命令本身也是一个对象, 一个类. 这个命令, 进攻, 可以同时传递命令给 弓箭手, 刀斧手 等各种士兵进行进攻. 所以等于说把这个"命令" 本身抽象成一个类. 这样, 将军只需要面对的是“命令”对象来发布,而
阅读全文
摘要:群体广播信息时, 就可以用到观察者模式 生产者(WeatherData天气变化) -> 服务方法(WeatherData, 理解为气象站) -> 观察者(订阅者Observer)(用一个列表维护当前的观察者) 天气预报举例: 气象站检测, 然后通过公告发布出去 需要一个开放性的 API, 便于第三方
阅读全文
摘要:与强势类型的人沟通 沉稳果断, 不拖泥带水. 比如多提问一些答案为 是 和 不是的问题, 在讨论某些具体问题的时候, 最后一定要有鲜明的立场和结果; 说话的时候, 眼睛注视对方额头和笔尖中间的位置, 身体要稍微往对方方向躬身, 说话不要绕弯子,但是要注意措辞的礼貌和语气;如果是商务谈判的话要有力和有
阅读全文
摘要:模板模式, 我们有一个模板函数在抽象的模板类里, 作为统一的被调用接口. 这个函数里是我们想要执行的步骤, 这样, 外界只要调用这个接口, 就可以完成任务(不用分部调用). 还是已煮茶和煮咖啡为例子. package com.leon.design; public class ClientTempl
阅读全文
摘要:这 4 个模式很相近 适配器模式:包装另一个对象,并提供不同的接口。外观模式:包装许多对象,以简化他们的接口。装饰者模式:包装另一个对象,并提供额外的行为。(额外的行为可以是灵活的多个装饰器(class)完成的, 也就是可以 n:1)代理模式:包装另一个对象,并控制对它的访问. (只能 1:1 的代
阅读全文
摘要:举例制造Pizza的工厂 简单工厂模式(一般用这种就可以了) 工厂类里, 通过 if else 来创建不同的具体类. 多个品牌只有一个工厂,通过 if else 来判断制造什么样的Pizza(海鲜Pizza, 榴莲Pizza) package com.leon.design; public clas
阅读全文
摘要:1. 抛出问题, 先代码实现(非设计模式方式) 2. 具体设计模式说明和解释(生活应用场景) 项目中读取文件的类, 做数据库连接的类 3. 代码实现 饿汉式 :个人推荐, 简单, 安全. 这种方式可以保证线程安全(因为类加载时, 直接创建了实例, JVM 可以保证这个实例是线程安全的, 所以getI
阅读全文
摘要:设计模式: 对软件编程中普遍存在的问题的整体解决方案. (面向对象编程), 为了将来更好的扩展(修改) 后续所有的 Client 本身不是设计模式的一部分, 它是客户,调用这个设计模式. 为什么要用设计模式 1) 代码重用性 (相同功能的代码, 不用重复编写) 2) 可读性(编程规范性,便于其他程序
阅读全文
摘要:上边执行之后, 驱动器就加载到内存中. connect 的 jar 包可以下载. 比较常用的是 PreparedStatement (可以防止 SQL 注入) 主要是使用了 ? 占位符 常用的方法: executeQuery() 返回结果集, executeUpdate() 插入/修改/删除 结果集
阅读全文
摘要:注解与反射 jdk5.0 之后的技术, 分为: 内置注解,自定义注解. 注解并不是程序本身, 可以对程序作出解释(类似注释), 但是还可以被其他程序/编译器读取. 注解类似一个说明, 这个说明可以被其他类读到. 这些注解本身放在这没有意义,需要有其他的程序来处理这些注解才有实际意义. 根据注解的提示
阅读全文
摘要:传输层协议(貌似只有2个) UDP, TCP, 因为 UDP 不安全, 所以 TCP 肯定会广泛使用. UDP 传输层协议, UDP 可能丢包, 不安全 这个传输一次最多是 60 K 的数据. 发送端 package com.leon.Network; import java.net.Datagra
阅读全文
摘要:多线程实现方法 使用 实现 Runnable 接口的方式, 实现了 Runnable 的类的实例由线程创建. 必须实现 run 方法. 用户线程: 默认情况下, 线程都是用户线程 守护线程: 用来守护用户线程的. run 这种多线程的方法: (假装 Employee 实现了 runnable 方法
阅读全文
摘要:基本内容 Process 1) 确定源 2) 选择流 3) 操作(读,写) 4) 释放资源. 分隔符 建议采用 "C:/JavaWork/asdf/xxx.java" 这种 / 无论是字节处理,还是字符处理, 都要套一层 buffer 来提升性能. (默认是 8k 做一次 I/O 的交互) 文件 F
阅读全文
摘要:1个字节是 8 位 2 进制数, 为什么要有这个字节的概念呢? 这要追述历史,实际上, 字节是为了方便人们处理而定制的存储单元. 有了这个存储单元,人类就可以把例如数字等存储在里边,然后统一编码。 最开始的 ASCii 码,没有汉字什么事情. 随着计算机发展,需要一套统一的编码,这时候就出现了 UT
阅读全文
摘要:建立时 3 次握手 首先要安装 tcpdump 软件, sudo apt-get install tcpdump (用来抓包) 然后查看网卡的名字, ifconfig, 我这里网卡的名字是ens33. 然后我们再打开一个ssh链接,输入命令用来监听: tcpdump -nn -i ens33 por
阅读全文
摘要:一般, 我们在使用 eclipse 时, 有时想查看某些工具类的源码, 可以通过 eclipse : 在菜单 Window -> Preferences; 点 Java -> Installed JRE(全部选中) -> 右边 edit -> Source attachment, 然后找到 jdk
阅读全文
摘要:核心类 对象想要被传输, 需要通过序列化来将对象编程“序列”. 字符集对字符流的影响. 字符流底层还是字节流. 分隔符 public class IOTest { public static void main(String[] args) { // TODO Auto-generated meth
阅读全文
摘要:在初学Java的时候,经常能看到教材上的写法,使用了接口Map来引用一个map,而不是它的具体实现,那么这样做的好处是什么呢? <Effective Java>第52条:通过接口引用对象 作者认为,如果有合适的接口类型存在,那么对于参数、返回值、变量和域来说,就都应该使用就接口类型进行声明。 只有当
阅读全文
摘要:http://www.doc88.com/p-0798919871588.html 这个Book 不错, 但是没有找到书名. 什么是自组织?自组织理论是关于在没有外部指令条件下,系统内部各子系统之间能自行按照某种规则形成一定的结构或功能的自组织现象的一种理论. agile self-organiza
阅读全文
摘要:SAFe: Scaled Agile Framework SAFe的全称是Scaled Agile Framework enterprise 上图黄色柱形中的每一个小圈代表的是一个scrum迭代,共有五个迭代。两个小圈中间的省略号。。。的意思是有很多团队在跑迭代。SAFe有两层,Team层和prog
阅读全文