Java 应用与开发 - Java 内存模型与分配机制大纲 Java 内存模型 Java 程序内存运行分析 Java 内存管理建议 Java 应用与开发 Java 内存模型与分配机制 王晓东 wangxiaodong@ouc.edu.cn 中国海洋大学 September 30, 2018 大纲 Java 内存模型 Java 程序内存运行分析 Java 内存管理建议 学习目标 1. 理解 JVM 内存模型,掌握 JVM 内存构成 2 Java 程序内存运行分析 Java 内存管理建议 大纲 Java 内存模型 Java 程序内存运行分析 Java 内存管理建议 Java 垃圾回收机制 JVM 的垃圾回收机制(GC)决定对象是否是垃圾对象,并进行 回收。 O 垃圾回收机制的特点 ▶ 垃圾内存并不是用完了马上就被释放,所以会产生内存释放 不及时的现象,从而降低内存的使用效率。而当程序庞大的 时候,这种现象更为明显。 ▶0 码力 | 44 页 | 818.30 KB | 1 年前3
Nacos架构&原理
Nacos 寻址机制 56 Nacos 服务发现模块 63 Nacos 注册中心的设计原理 63 Nacos 注册中心服务数据模型 80 Nacos 健康检查机制 89 Nacos 配置管理模块 97 配置⼀致性模型 97 Nacos ⾼可⽤设计 100 Nacos 高可用设计 100 Nacos 鉴权插件 103 Nacos 账号权限体系 103 Nacos 认证机制 110 Nacos 19 > Nacos 架构 内核层 插件机制:实现三个模块可分可合能力,实现扩展点 SPI 机制,用于扩展自己公司定制。 事件机制:实现异步化事件通知,SDK 数据变化异步通知等逻辑,是 Nacos 高性能的关键部分。 日志模块:管理日志分类,日志级别,日志可移植性(尤其避免冲突),日志格式,异常码+帮 助文档。 回调机制:SDK 通知数据,通过统⼀的模式回调用户处理。接口和数据结构需要具备可扩展性。 容量管理:管理每个租户,分组下的容量,防止存储被写爆,影响服务可用性。 流量管理:按照租户,分组等多个维度对请求频率,长链接个数,报文大小,请求流控进行控制。 缓存机制:容灾目录,本地缓存,Server 缓存机制,是 Nacos 高可用的关键。 启动模式:按照单机模式,配置模式,服务模式,DNS 模式模式,启动不同的模块。 ⼀致性协议:解决不同数据,不同⼀致性要求情况下,不同⼀致性要求,是0 码力 | 326 页 | 12.83 MB | 10 月前3
跟我学Shiro - 张开涛...................................................................................... 66 第八章 拦截器机制 .................................................................................................. .................................................................................... 101 第十一章 缓存机制 .................................................................................................. Shiro——http://jinnianshilongnian.iteye.com/ 6 提高效率; Concurrency:shiro 支持多线程应用的并发验证,即如在一个线程中开启另一个线程,能 把权限自动传播过去; Testing:提供测试支持; Run As:允许一个用户假装为另一个用户(如果他们允许)的身份进行访问; Remember Me:记住我,这个是非常常见的功能,即一次登录后,下次再来的话不用登录0 码力 | 219 页 | 4.16 MB | 10 月前3
《Java 应用与开发》课程讲义 - 王晓东. . 4 1.1.2 Java 技术的特点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2 Java 平台核心机制 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.3 Java 开发环境 . . . . . . . . . 5 课后习题 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 6 Java 内存模型与分配机制 58 6.1 Java 内存模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 6.1.1 Java 6.3 Java 内存管理建议 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 6.3.1 Java 垃圾回收机制 . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 6.3.2 JVM 内存溢出和参数调优 . . . . . . . . . .0 码力 | 330 页 | 6.54 MB | 1 年前3
Java 应用与开发 - 异常处理异常的概念及分类 Java 异常处理机制 Java 应用与开发 异常处理 王晓东 wangxiaodong@ouc.edu.cn 中国海洋大学 October 30, 2018 大纲 异常的概念及分类 Java 异常处理机制 学习目标 1. 掌握 Java 异常的概念和分类 2. 深入理解 Java 异常处理机制 大纲 异常的概念及分类 Java 异常处理机制 大纲 异常的概念及分类 异常的概念及分类 Java 异常处理机制 大纲 异常的概念及分类 Java 异常处理机制 C++ 中的异常处理 O 《The C++ Programming Language》 ▶ 一个库的作者可以检测出发生了运行时错误,但一般不知道 怎样去处理它们(因为和用户具体的应用有关); ▶ 另一方面,库的用户知道怎样处理这些错误,但却无法检查 它们何时发生(如果能检测,就可以再用户的代码里处理 了,不用留给库去发现)。 了,不用留给库去发现)。 提供异常处理机制的的基本思想 让一个函数在发现了自己无法处理的错误时抛出(throw)一个 异常,然后它的(直接或者间接)调用者能够处理这个问题。 O 《C++ primer》 将问题检测和问题处理相分离。 (Exceptions let us separate problem detection from problem resolution.) 大纲 异常的概念及分类0 码力 | 33 页 | 626.40 KB | 1 年前3
Apache Shiro参考手册中文版HTTP 环境! 如果在一个 Web 应用程序内部部署,默认的 Session 将会是基于 HttpSession 的。但,在一个非 Web 环境中,像这 个简单的教程应用程序,Shiro 将会默认自动地使用它的 Enterprise Session Management。这意味着你会使用相同的 API 在你的应用程序,在任何层,不论部署环境!这开辟了应用程序的新世界,由于任何需要会话的应用程序不必 但这是一个相当简单的应用程序。你可能已经问过你自己,“如果我不想使用 INI 用户帐户,而是要连接到一个更 复杂的用户数数据源,该怎么办呢?”。 要回答这个问题,需要对 Shiro 的架构和支持的配置机制有更深一些的理解。我们下面将涉及到 Shiro 的架构。 Apache Shiro Architecture Apache Shiro 的设计目标是通过直观和易于使用来简化应用程序安全。Shiro Authorizer(org.apache.shiro.authz.Authorizer) Authorizer 是负责在应用程序中决定用户的访问控制的组件。它是一种最终判定用户是否被允许做某事的机制。 与 Authenticator 相似,Authorizer 也知道如何协调多个后台数据源来访问角色恶化权限信息。Authorizer 使用 该信息来准确地决定用户是否被允许执行给定的动作。0 码力 | 92 页 | 1.16 MB | 1 年前3
Apache Shiro 1.2.x Reference Manual 中文翻译和不同:它不需要一个 HTTP 环境! 如果发布到一个 web 程序中,默认情况下 Session 将会使用HttpSession 作为基础,但是, 在一个非 web 程序中,比如该简单示例程序中,Shiro 将自动默认使用它的 Enterprise Session Management,这意味着你可以在任何程序中使用相同的 API,而根本不需要考虑发 布环境!这打开了一个全新的世界,从此任何需要 session Tutorial 教程 但这个程序太简单了,你可能会问自己,“如果我不想使用 INI 用户帐号,而希望连接更为复 杂的用户数据源呢?” 解决这些问题需要更深入地了解 并理解Shiro 的架构和配置机制,我们将在下一节 Architecture 中介绍。 Apache Shiro 1.2.x Reference Manual 中文翻译 18 2. Tutorial 教程 3. Architecture lonestarr = vespa, goodguy, schwartz darkhelmet = ludicrousspeed, badguy, schwartz 自动生成IniRealm 定义非空的[users]或[roles]区域将自动创建org.apache.shiro.realm.text.IniRealm 实例,在 [main]区域下生成一个可用的 iniRealm ,你可以像上面配置其它对象那样配置它。0 码力 | 196 页 | 2.34 MB | 1 年前3
Java 应用与开发 - Java 技术概述及开发环境大纲 Java 技术概述 Java 平台核心机制 Java 开发环境 Java 基本开发流程 Java 应用与开发 Java 技术概述及开发环境 王晓东 wangxiaodong@ouc.edu.cn 中国海洋大学 September 18, 2018 大纲 Java 技术概述 Java 平台核心机制 Java 开发环境 Java 基本开发流程 参考书目 1. 陈国君等编著, Java Java 技术概述 Java 平台核心机制 Java 开发环境 Java 基本开发流程 本章学习目标 1. 了解 Java 的发展历程 2. 理解 Java 平台的相关概念和机制 3. 掌握基本 Java 开发环境配置 大纲 Java 技术概述 Java 平台核心机制 Java 开发环境 Java 基本开发流程 大纲 Java 技术概述 Java 平台核心机制 Java 开发环境 Java Java 技术概述 Java 平台核心机制 Java 开发环境 Java 基本开发流程 ���� Java 技术概述 Java 平台核心机制 Java 开发环境 Java 基本开发流程 大纲 Java 技术概述 Java 平台核心机制 Java 开发环境 Java 基本开发流程 那些伟大的 LOGO 大纲 Java 技术概述 Java 平台核心机制 Java 开发环境 Java 基本开发流程0 码力 | 33 页 | 1.17 MB | 1 年前3
Java 应用与开发 - 面向对象编程进阶方法, 情况如何? 大纲 多态性 方法重载 关键字 static 关键字 final 对象造型 引用类型数据值之间的强制类型转换称为造型(Casting)。 1. 从子类到父类的类型转换可以自动进行。 1 Person p = new Student(); 2. 在多态的情况下,从父类到子类的类型转换必须通过造型实 现。1 1 Person p1 = new Student(); 2 以发挥其全部潜力。 大纲 多态性 方法重载 关键字 static 关键字 final 对象造型 引用类型数据值之间的强制类型转换称为造型(Casting)。 1. 从子类到父类的类型转换可以自动进行。 1 Person p = new Student(); 2. 在多态的情况下,从父类到子类的类型转换必须通过造型实 现。1 1 Person p1 = new Student(); 2 以发挥其全部潜力。 大纲 多态性 方法重载 关键字 static 关键字 final 对象造型 引用类型数据值之间的强制类型转换称为造型(Casting)。 1. 从子类到父类的类型转换可以自动进行。 1 Person p = new Student(); 2. 在多态的情况下,从父类到子类的类型转换必须通过造型实 现。1 1 Person p1 = new Student(); 20 码力 | 49 页 | 659.74 KB | 1 年前3
Java 应用与开发 - HTTP 会话跟踪技术就能够保证的,而是客户端浏览器和服务器端在 HTTP 协 议之上采用额外的技术协同的结果。 2. 掌握常用的会话跟踪技术,了解采用 URL 重写维持会话跟 踪的方法;理解 Cookie 和 Session 的协同机制,掌握使用 Cookie 和 Session 实现会话跟踪的技术。 3. 能够使用 Cookie 和 Session 编写会话跟踪代码。 大纲 会话基本概念 会话跟踪技术 本节习题 大纲 会话基本概念 Web 服务器,访问 不同 Web 文档进行请求/响应,到结束访问的一系列过程称 为会话,即一次会话(Session)。 ▶ 当用户访问第一个 Java Web 组件时,Java EE Web 服务器 自动为用户创建一个会话对象。 例如,当当网进行图书浏览、购买、完成结算的全过程可能是一 次会话;登录 126 邮箱,完成浏览收件箱、编写邮件、发送邮件、 登出邮箱可以是一次会话。 大纲 会话基本概念 Cookie 保存在 HTTP 响应头中并发送给浏览器,浏览器 收到 HTTP 响应头,解析出 Cookie,将它保存在客户的本地隐 藏文件中。 ▶ 客户浏览器每次向 Web 服务器发出 HTTP 请求时,自动将 Cookie 保存在请求头中,随请求体一起发送到服务器,这个过程 不需要人工参与。 ▶ Web 服务器可以从请求对象中取出 Cookie,进而得到 Cookie 中 保存的名称/值对,从而实现会话跟踪。0 码力 | 54 页 | 824.47 KB | 1 年前3
共 39 条
- 1
- 2
- 3
- 4













