大纲
反射
类的
加载、连接和初始化
类
加载器
使用反射生成并操作对象
本节习题
# Java 应用与开发 类
加载和反射
王晓东
wangxiaodong@ouc.edu.cn
中国海洋大学
December 24, 2018
 理解什么是反射机制,通过常见场景认识反射的作用。
2. 掌握类的
加载、连接和初始化概念。
3. 理解类
加载器及类
加载机制。
4. 掌握使用反射生成并操作对象的方法。
|大纲|反射|类的
加载、连接和初始化|类
加载器|使用反射生成并操作对象|本节习题|
|---|---|---|---|---|---|
|大纲||||||
|反射||||||
|类的
加载、连接和初始化||||||
|类
加载器||||||
|使用反射生成并操作对象||||||
反射 | 类的加载、连接和初始化 | 类加载器 | 使用反射生成并操作对象 | 本节习题 | | 接下来… |
| 反射 |
| 类的加载、连接和初始化 |
0 码力 |
46 页 |
714.40 KB
| 2 年前 3 0 码力 |
100 页 |
3.98 MB
| 1 年前 3 e885b686d91cf13f/p10_1.jpg)
## BFE主要设计思想
· 转发模型优化
· 支持多租户
• 引入条件表达式,减少正则表达式使用
- 降低动态配置加载的难度
- 区分“常规配置”和“动态配置”
• 增强服务状态监控能力
• 向外展现大量内部的执行状态
- 将大存储功能转移到外部
- 加快启动速度
## 正则表达式 方案的问题
- 配置难以维护:正则表达式存在严重的可读性问题 00b4c32f84e0faee885b686d91cf13f/p19_1.jpg)
## 配置管理
• BFE配置的分类
• 常规配置:.conf
• 动态配置: .data
## • 配置动态加载
• 外部触发,细粒度加载
写配置
func (t *ProductRuleTable) Update(conf productRuleConf) {
t.lock.Lock() [Image](/uploads/documents/2/0/0/b/200b4c32f84e0faee885b686d91cf13f/p23_1.jpg)
## BFE扩展模块的编写
## • 配置加载
• 静态:mod_block.conf
- 动态:block_rules.data,
ip_blocklist.data
## • 回调函数编写和注册
## · 定义状态变量
type ModuleBlock 0 码力 |
26 页 |
1.78 MB
| 2 年前 3 0 码力 |
1985 页 |
6.67 MB
| 1 年前 3 0 码力 |
24 页 |
417.46 KB
| 1 年前 3 分库分表,兼容mycat、kingshard路由方案
Prepared Statements(分库分表)
读写分离,多个从实例负载均衡
多租户,租户之间软隔离
错误、慢sql指纹
配置热加载
连接池
使用TiDB sqlparser
’ alt=‘OCR图片’/>
存储层
mysql实例
gaea-agent
mysql实例
gaea-agent
’ alt=‘OCR图片’/> goroutine
开发效率高
工具丰富
kingshard、vitess、tidb等优秀项目
团队Go经验比较丰富,也一直很喜欢用Go开发系统
’ alt=‘OCR图片’/>
配置热加载
动静分离
端口 etcd信息 log信息 会话参数
实例信息分库分表规则用户信息读写分离连接池配置
.
’ alt=‘OCR图片’/>
方案一
configAtomic atomic.Value config, err := NewConfig(confType)
config.Load()
p.configAtomic.Store(&configWrapper{config})
定义
加载/reload
c := p.configAtomic.Load()
if c == nil {
err = fmt.Errorf("invalid remote config 0 码力 |
32 页 |
13.83 MB
| 1 月前 3 0 码力 |
239 页 |
27.39 MB
| 1 年前 3 简单来说Java对象的创建过程总共分为5步:
## Java创建对象的过程
## 类加载检查
首先当虚拟机遇到一个new指令时,首先会去检查这个参数能否在常量池中定位到这个类的符号引用并且检查这个符号引用所代表的的类是否已经被加载、连接、解析和初始化过,如果没有需要先执行的加载操作(详细过程可参考"类的加载流程")。
## 分配内存
当类加载检查通过后,接下来虚拟机需要为新生对象分配内存,为对象分配空间的任务等同于把一块定大小的内存从 0 码力 |
4 页 |
389.87 KB
| 2 年前 3 2_1_1 url:
## 运营埋点
• PV UV
· 访问链路
· 转化率
## CONTENTS
3
## 小程序业务组件
- 使用原生的方式开发,没有使用wepy等框架
· 分包加载,主包原则只放购物主流程
· 尽量压缩业务代码,减少文件大小
- 控制基础库版本,减少对用户的影响
▶ .idea
▶ component
components
config
doc
0 码力 |
36 页 |
833.39 KB
| 2 年前 3 0 码力 |
1399 页 |
4.59 MB
| 2 年前 3
|