Spring 架构篇——使用 Spring Boot Actuator 监控端点

Spring Boot 提供了运行时的应用监控和管理功能,我们可以通过 HTTP、JMX、SSH 协议来进行操作,审计、健康及指标信息将会自动得到。spring-boot-starter-actuator 模块的实现对于实施微服务的中小团队来说,可以有效地减少监控系统在采集应用指标时的开发量。当然,它也并不是万能的,有时候我们也需要对其做一些简单的扩展来帮助我们实现自身系统个性化的监控需求。在本文中,我们将详解的介绍...
阅读(442) 评论(0)

Linux 下 GitLab 社区版安装及汉化

GitLab 是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面进行访问公开的或者私人项目,社区版开源且免费。与 Github 类似,GitLab 能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序 (Wall) 进行交流。它还提供一个代码片段收集功能可以轻松实现...
阅读(353) 评论(0)

Java 后端实战——使用 Jenkins 进行持续集成

分离是为了职责专注,改变是为了让产品更好。传统前后端的分层。有了 node.js,我们有机会从工作职责上重新定义的前后端的分层。在服务器(Java)与 浏览器(JS)的中间架了一个中间层(NodeJS)这样做的好处是都是JS,可以前后端复用;体质适合:事件驱动、非阻塞I/O;适合IO密集型业务;执行速度也不差。前端(浏览器上,JS + HTML + CSS):跑在浏览器上的JS,CSS、JS加载与运行,DOM操作,任...
阅读(169) 评论(0)

Java 后端实战——基于 okhttp3 的网络框架设计

本篇文章带大家设计一套满意业务需求、代码健壮高效(高内聚低耦合)并且可拓展的网络框架。以最新的okhttp3为基础设计出高效可靠的网络缓存、多线程文件下载等架构模块。从此不局限于使用别人的框架,而步入了设计框架,让自己可以走的更远,我觉得这才是一名合格开发者所应该具备的能力。在开发中,选择一个开源框架的标准有很多,例如学习成本、文档是否齐全、github星数量、现在是否有人维护、流行程度、代码设计是否有借鉴性、代码体...
阅读(1214) 评论(2)

Java 后端实战——基于 MySQL 的 SQL 优化实践

怎样才能写出高性能的 Web 应用程序,SQL 优化显得格外重要,下面是自己的一些总结,希望本文能给各位数据库管理员在性能优化方面一些启示。在现代业务开发中,建议还是尽可能的进行单表查询。在设计的时候,如果知道系统的数据量不会太大(关联代价不会太高),那么用三范式的原则是必须的,毕竟三范式能避免数据冗余带来的更新插入上的需要同时多表里相同字段的麻烦。如果数据量很大,那么就需要冗余数据,例如订单流水表中还放入了用户表的...
阅读(3840) 评论(10)

Java 后端实战——使用 Docker 将 Web 应用容器化

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。...
阅读(2981) 评论(6)

Spring 架构篇——Spring Boot 整合 Thymeleaf

Thymeleaf 是现代化服务器端的开源 Java 模板引擎 (不是 web 框架),不同与 JSP 和 FreeMarker,Thymeleaf 的语法更加接近 HTML,并且也有不错的扩展性。Thymeleaf 支持 HTML 原型,然后在 HTML 标签里增加额外的属性来达到模板+数据的展示方式。浏览器解释 HTML 时会忽略未定义的标签属性,所以 Thymeleaf 的模板可以静态地运行,当有数据返回到页面...
阅读(1584) 评论(0)

Spring 架构篇——Spring Boot 整合 Freemarker

Freemarker 是一个用 Java 语言编写的开源模版引擎 (不是 web 框架),它基于模版来生成文本输出。Freemarker 与 Web 容器无关,不依赖于 Web 容器,在 Web 运行时它并不知道 Servlet 和 HTTP,简而言之就是个工具包。不仅可以用作变现层的实现技术,而且还可以用于生成 XML、JSP、Java 等。目前企业中主要用 Freemarker 做静态页面或页面展示。Spring...
阅读(2242) 评论(1)

Java 后端实战——常见数据加密算法/编码方式

本文主要介绍了几种常见的数据加密算法(对称密码算法/非对称密码算法)的 Java 实现和常见编码方式的使用。对称加密指加密和解密使用相同密钥的加密算法。常见的对称加密算法包括:AES算法,Java实现,密钥建立时间短、灵敏性好、内存需求低、安全性高。非对称密码算法是一种基于密钥的保密方法,需要公开密钥和私有密钥,在文件加密、尤其是网银中应用广泛。非对称密码算法比对称密码算法更安全。常见的非对称加密算法包括:RSA算法...
阅读(3243) 评论(3)

Java 后端实战——使用 Redis 进行内容缓存和高访问负载

NoSQL(Not Only SQL),泛指非关系型数据库,是为了处理高并发读写、海量数据的高效率存储和访问、高扩展性和高可用性而产生的。本篇将主要阐述如何使用 Redis 数据库进行内容缓存和高访问负载,Redis 使用 C 语言开发的一个开源的高性能的键值对数据库,通过提供多种键值数据类型来适应不同场景下的存储需求,目前 Redis 支持的键值数据类型有很多种,比如字符串类型、列表类型、有序集合类型、散列类型、...
阅读(7223) 评论(0)

Java 设计模式情景分析——装饰模式

在现实生活中,人需要各式各样的衣物,不管你穿着怎样,但是,对于个人的本质来说是不变的,充其量只是在外面披上一层遮盖物而已,这就是装饰模式,装饰模式也称为包装模式,结构型设计模式之一,其使用一种对客户端透明的方式来动态地扩展对象的功能,同时它也是继承关系的一种替代方案之一,动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式相比于生成子类更为灵活。装饰模式的使用情景有需要透明且动态地扩展类的功能时。装饰模式的通...
阅读(925) 评论(0)

Java 设计模式情景分析——代理模式

代理模式也称为委托模式,其实代理在我们生活中也并不少见,最常见的莫过于代理上网了,连上代理服务器地址,就可以轻松浏览全世界的网站了,代理模式为其他对象提供了一种代理以控制对这个对象的访问。代理模式的使用情景有当无法或者不想直接访问某个对象或访问某个对象存在困难时可以通过一个代理对象来间接访问,为了保证客户端使用的透明性,委托对象与代理对象需要实现相同的接口。动态代理通过一个代理类来代理N多个被代理类,其实质上对代理者...
阅读(1042) 评论(0)

Java 设计模式情景分析——观察者模式

观察者模式是一种使用频率非常高的模式,有时也被称作发布/订阅模式,属于行为型模式,它最常用的是 GUI 系统、订阅——发布系统,它一个重要作用就是解耦,使得它们之间的依赖性更小。观察者模式定义了对象间一种一对多的依赖关系,使得每当一个对象改变状态时,则所有依赖于它的对象都会得到通知并被自动更新。观察者模式的使用情景有关联行为场景;事件多级触发场景;跨系统的消息交换场景(如消息队列、事件总线的处理机制)。程序中使用观察...
阅读(2054) 评论(0)

Java 设计模式情景分析——策略模式

当我们遇到实现某一个功能可以有多种算法或者策略,需要根据实际情况选择不同的算法或者策略时,可以选择通过硬编码的方式(if-else 或者 switch-case)来实现,但是这样会使这个类变得臃肿、维护成本上升出错率也变大了。基于这样的情景,如果将这些算法或者策略抽象出来,提供一个统一的接口,不同算法或者策略有不同的实现类,这样在程序客户端就可以通过注入不同的实现对象来实现算法或者策略的动态替换,这种可扩展性高、可维...
阅读(656) 评论(0)

Java 设计模式情景分析——工厂方法模式

工厂方法模式(Factory Pattern),是创建型设计模式之一。其在我们平时开发中应用很广泛,如 Android 中的 Activity 里的各个生命周期方法,以 onCreate 为例,它就可以看作是一个工厂方法,我们在其中可以构造我们的 View 并通过 setContentView 返回 framework 处理等。定义:定义一个用于创建对象的接口,让子类决定实例化哪个类。在任何需要生成复杂对象的地方,都...
阅读(867) 评论(1)
55条 共4页1 2 3 4 下一页 尾页
    个人资料
    • 访问:410356次
    • 积分:3590
    • 等级:
    • 排名:第10089名
    • 原创:55篇
    • 转载:0篇
    • 译文:0篇
    • 评论:75条
    博客专栏