上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 15 下一页
摘要: 本文转载自微信公众号半导体行业观察, 链接 https://mp.weixin.qq.com/s/5Sf5webfxtLTatx7fFagJw 阅读全文
posted @ 2019-02-28 15:07 harrychinese 阅读(877) 评论(0) 推荐(0) 编辑
摘要: 本文转载自微信公众号半导体行业观察, 链接 https://mp.weixin.qq.com/s/mslPkb-aJDY9JHpHy88h3A 阅读全文
posted @ 2019-02-28 15:02 harrychinese 阅读(267) 评论(0) 推荐(0) 编辑
摘要: 本文转载自微信公众号半导体行业观察, 链接 https://mp.weixin.qq.com/s/BpK1Ot8oefFv4ySaN6PZVw 阅读全文
posted @ 2019-02-28 14:10 harrychinese 阅读(456) 评论(0) 推荐(0) 编辑
摘要: spring-cloud-sleuth spring-cloud-sleuth 可以用来增强 log 的跟踪识别能力, 经常在微服务架构中被引入, 但其实在单体应用中也很重要, 比如多线程操作/定时任务/复杂的web请求, 都需要很容易地区分纳几行log日志属于一组操作. 未引入分布式链路跟踪系统之 阅读全文
posted @ 2019-02-25 21:31 harrychinese 阅读(608) 评论(0) 推荐(0) 编辑
摘要: 版本选择的原则: 1. 优先选择官方指定的long-term support(LTS)版本, 非LTS版本往往会引入较多实验性的特性, 稳定性要比LTS要差一些, LTS版本生命周期甚至会比晚发行的非LTS版更长久. 2. 优先选择纯粹的bugfix版, 而不是那种有引入新特性的版本. 3. 如果不 阅读全文
posted @ 2019-02-19 21:52 harrychinese 阅读(29623) 评论(1) 推荐(2) 编辑
摘要: 国产原型工具 http://www.mockplus.cn, 该工具功能很棒. 每次打开软件都需先登陆, 好在项目文件是可以保存到本地, 可以注册为免费版/个人版/团队版/企业版. 我是免费账号, 功能自然有限制, 但不影响整体使用, 我的账号 harry@163.com, 也可以通过手机号登录, 阅读全文
posted @ 2019-02-01 15:39 harrychinese 阅读(2105) 评论(0) 推荐(0) 编辑
摘要: showdoc 简介 在线文档管理系统很多, 比如阿里的语雀、腾讯的 TAPD 平台也包括文档管理功能, 但这些系统需要联网的, 企业内文档协作工具不是很多, 最有名的是收费的 confluence 了, 禅道有文档管理功能, 但功能较弱, 比较适合附件上传管理. 这里介绍 Showdoc 这款开源 阅读全文
posted @ 2019-01-31 17:32 harrychinese 阅读(8783) 评论(0) 推荐(0) 编辑
摘要: 禅道是一款非常优秀的项目管理系统, 该软件产品已经发展了很多年, 开发商非常大度, 一般情况下, 使用开源版功能就足够了. 如果要集成svn/git/甘特图等高级功能, 可以采购专业版. 建议有条件的企业, 购买专业版以支持该开发商. 我使用的是最新开源版 11.1, 界面比之前版本好看多了, 新增 阅读全文
posted @ 2019-01-30 15:18 harrychinese 阅读(5412) 评论(0) 推荐(0) 编辑
摘要: 给团队做的docker基础分享ppt, 见下面的附件. https://files.cnblogs.com/files/harrychinese/docker_intro.pptx 阅读全文
posted @ 2019-01-25 21:15 harrychinese 阅读(6728) 评论(0) 推荐(1) 编辑
摘要: 软件项目成功之要素http://www.cnblogs.com/wintersun/p/5927338.html企业项目化管理介绍http://www.cnblogs.com/wintersun/p/5427016.html数字化IT人才与组织http://www.cnblogs.com/winte 阅读全文
posted @ 2019-01-24 16:05 harrychinese 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 微服务有利有弊, 几位大牛的文章值得经常看看. 微服务架构设计 https://www.cnblogs.com/wintersun/p/6219259.html 恒生研究院-- 火爆开发概念之微服务实践篇http://rdcqii.hundsun.com/portal/article/947.htm 阅读全文
posted @ 2019-01-24 14:23 harrychinese 阅读(240) 评论(0) 推荐(0) 编辑
摘要: OAuth2: 适合To C的应用场景, 比如我们开发一个app, 可以借用微信/微博用户认证开放接口, 达到免注册登陆, 企业内部系统没有必要引入. OAuth2的步骤较多, 角色也较多, 涉及到auth code/access code/refresh code 以及clientId/clien 阅读全文
posted @ 2019-01-23 16:14 harrychinese 阅读(413) 评论(0) 推荐(0) 编辑
摘要: 为什么需要API gateway? 企业后台微服务互联互通, 因为在内网, 安全基本没问题, 再配合使用Basic Auth就足够了, 同时也能利用上服务注册的优点, 有效隔离微服务之间的相互依赖. 但如果通过javascript/原生app直接访问微服务, 就会有下面的问题: 1. 接口安全问题, 阅读全文
posted @ 2019-01-22 17:49 harrychinese 阅读(1483) 评论(0) 推荐(0) 编辑
摘要: 近期阿里开源了Fescar分布式事务中间件, 值得期待. 分布式事务是指一个事务会涉及到到多个应用接口调用, 底层数据表涉及到多个, 但数据库可以是一个或多个, 它是传统单数据库事务在广度上的延伸. 事务并发控制, 在OLTP关系型数据库中, 事务并发控制往往是指事务的隔离性, 在本文中, 指的是应 阅读全文
posted @ 2019-01-21 16:29 harrychinese 阅读(1420) 评论(0) 推荐(0) 编辑
摘要: 正在读 钟华 著的<<企业IT架构转型之道 - 阿里巴巴中台战略思想与架构实战>> 一书, 参考了网上的讨论, 对SOA和微服务有了一些新的认识. 知乎上的讨论: SOA 与 微服务https://www.zhihu.com/question/37808426 ESB 与 API 网关https:/ 阅读全文
posted @ 2019-01-21 13:11 harrychinese 阅读(339) 评论(0) 推荐(0) 编辑
摘要: 本文转载自 www.postgres.cn 下的文章: 再谈PostgreSQL的膨胀和vacuum机制及最佳实践http://www.postgres.cn/news/viewone/1/390 还有两个相关的文章也挺不错: 也谈PostgreSQL的Vacuum机制及其最佳实践http://bb 阅读全文
posted @ 2019-01-17 10:40 harrychinese 阅读(1132) 评论(0) 推荐(0) 编辑
摘要: 可用作时序的数据库: [时序]TimescaleDB, 基于 PostgreSQL, 支持 SQL.[时序]KairosDB, 基于 Cassandra, 不支持 SQL. [通用]CrateDB, 基于 Elastic Search, 但支持ANSI SQL[时序]InfluxDB, 是 db-e 阅读全文
posted @ 2019-01-17 10:29 harrychinese 阅读(65680) 评论(2) 推荐(0) 编辑
摘要: 线上运行的Java应用突然没有响应、响应缓慢,进程突然消失,遇到这些情况应该如何应对呢?http://www.rowkey.me/blog/2018/11/22/online-debug/ 本文主要讲解了Linux下故障排查方法, 包括一些工具的使用. 另外就是java的工具包使用, 还有java程 阅读全文
posted @ 2019-01-09 14:18 harrychinese 阅读(167) 评论(0) 推荐(0) 编辑
摘要: RabbitMQ 术语 RabbitMQ 有很多术语和Kafka不一样, 理解这些术语十分重要. 1. Broker: 一个RabbitMQ实例就是一个 Broker. 2. VHost(Virtual Host): 一个RabbitMQ实例可包含多个VHost, 每个VHost都有自己的身份验证机 阅读全文
posted @ 2019-01-08 14:32 harrychinese 阅读(871) 评论(0) 推荐(0) 编辑
摘要: 市场上有不少项目计划类系统, 很多都是收费的, 还有很多都是web版, 这些都自然被排除了. 免费好用的还真不多, 今天简单介绍一下 gantt project 这个软件, 开源并且免费, 基于 java se 实现的, 跨平台. 网站是 http://ganttproject.biz 功能点: 1 阅读全文
posted @ 2019-01-07 17:10 harrychinese 阅读(8087) 评论(0) 推荐(0) 编辑
摘要: C/S / Tuxedo 架构/ B/S 架构演进 Tuxedo 推广使用之前, 典型的程序是C/S两层架构, 两层架构的缺点有:1. client端直连数据库, 因为数据库会为每个连接分配一定的内存, 所以C/S架构中的client数量不能太多, 所以只适合中小型系统. 2. client端不仅仅 阅读全文
posted @ 2019-01-04 16:42 harrychinese 阅读(752) 评论(0) 推荐(0) 编辑
摘要: Shiro 的加深理解: 1. Shiro 和 Spring 系组件的对标, Shiro = Spring Security + Spring Session. 就是说 Shiro 不仅仅是一个安全框架, 同时也是一个 Session 管理框架. 其实这也是很自然的事情, Shiro 会拦截所有的 阅读全文
posted @ 2018-12-29 14:59 harrychinese 阅读(876) 评论(0) 推荐(0) 编辑
摘要: Session 工作原理是什么? 因为 http 协议是无状态的, 对于服务器端来讲, 如何为不同的访问用户提供不一样的体验呢? 比如邮箱系统, 只有登录用户才能收发邮件. 这就需要服务器能识别每一个客户端访问, 知道哪些访问是来自一个同一个客户端, 显然这个事情光靠服务器端是做不到的, 需要浏览器 阅读全文
posted @ 2018-12-29 12:42 harrychinese 阅读(2302) 评论(0) 推荐(0) 编辑
摘要: 背景 在系统生命周期中, 免不了要做升级部署, 对于关键服务, 我们应该能做到不停服务完成升级 (perform a zero downtime upgrade), 对于一般系统, 应该做到优雅地停服务. 如何做到不停服务的升级? 需要做到下面两点:1. 服务本身应该部署多份, 前面应该有 LVS/ 阅读全文
posted @ 2018-12-26 14:30 harrychinese 阅读(23755) 评论(1) 推荐(3) 编辑
摘要: 原始代码 RoleService 类有删除角色和锁定角色两个函数. 问题分析:可以看到上面这两个函数逻辑完全一致, 仅仅是最终调用的函数不同, 应该能优化, 一个思路是: 将框架部分封装为一个公用函数, deleteRole() 和 lockRole() 函数调用该公共函数, 并将最终的 actio 阅读全文
posted @ 2018-12-19 21:42 harrychinese 阅读(620) 评论(0) 推荐(0) 编辑
摘要: 对于项目而言, 我们一般会有DAO->Service->Controller分层设计, 这些层次体现了每层的作用, 而层次之间的数据传递对象设计很少被提及, 下面是一个相对完整的数据转换过程:Table层--(DO对象)-->DAO层--(DO对象)-->Service层--(DTO对象)-->Co 阅读全文
posted @ 2018-12-18 12:29 harrychinese 阅读(2780) 评论(0) 推荐(1) 编辑
摘要: 注意点有:1. 不要启用 spring-boot-devtools, 如果启用 devtools 后, 不管是热启动还是手工重启, devtools总是试图重新恢复之前的session数据, 很有可能会导致session混乱.2. 在配置 Shiro 的filterChainDefinitionMa 阅读全文
posted @ 2018-12-12 17:08 harrychinese 阅读(1431) 评论(0) 推荐(0) 编辑
摘要: 之前发了SpringBoot 单元测试的博客, https://www.cnblogs.com/harrychinese/p/springboot_unittesting.html , 内容较少, 现在补齐SpringBoot单元测试的主要知识点. 测试有很多种, 有单元测试 、集成测试 、冒烟测试 阅读全文
posted @ 2018-12-11 17:32 harrychinese 阅读(1852) 评论(0) 推荐(0) 编辑
摘要: 消息的基本属性 消息的几个属性:type: 定义消息的 category, 比如 SQL 或 RPC 或 HTTPname: 代表一个动作 action, 详细的内容应该记录到 data 属性中, 而不是 name 属性, 比如: 对于 SQL type 来讲, name 应该是一个 SQL 模板, 阅读全文
posted @ 2018-12-11 09:22 harrychinese 阅读(2266) 评论(0) 推荐(1) 编辑
摘要: 我们有三种部署方式:1. docker 部署2. 采用官方的 war 包部署. 3. 源码部署 很显然 docker 部署是最简单的, 我尝试了多次, 都在 cat docker 容器镜像的编译过程失败了. 原因是: 镜像编译需要先编译 java 源码为 war 包, 这中间要从 maven 官网库 阅读全文
posted @ 2018-12-10 10:36 harrychinese 阅读(3715) 评论(0) 推荐(0) 编辑
摘要: 面上有很多优秀的 OS 级监控系统 (比如 falcon), 这些监控系统主要聚焦在 CPU/IO/Mem/Disk 和应用端口, falcon 甚至可以监控到 JVM. 但对于应用系统内部的一些监控, 比如程序的 exception/接口性能/调用链, 这些系统级的监控系统就不太好用了. 大众点评 阅读全文
posted @ 2018-12-10 10:03 harrychinese 阅读(1937) 评论(0) 推荐(0) 编辑
摘要: 本文讲解如何在 Java 程序中集成 Apollo 配置, 主要涉及到一些基础用法. 对于一些高级用法, 比如如何加密/解密配置项 (可用于数据库密码配置), 如何动态切换数据源地址,如何动态切换日志级别, 可以参考官方的 user cases git 库, 官方代码库 https://github 阅读全文
posted @ 2018-12-05 15:42 harrychinese 阅读(3689) 评论(0) 推荐(0) 编辑
摘要: 本博客讲详细讲解如何在 Windows 搭建携程 Apollo 服务器 (用户个人开发). 开发服务器有多种搭建方式:(1) docker, 搭建过程非常简单, 推荐有 docker 环境(2) 部署 Quick start 发行版, 本文采用 Quick start 版部署. Windows 服务 阅读全文
posted @ 2018-12-03 16:40 harrychinese 阅读(3806) 评论(0) 推荐(0) 编辑
摘要: 这篇是 maven 项目管理的第二篇, 讲解使用 maven 进行多个项目管理, 之前有一篇是 maven 的基础知识. SpringBoot系列: Eclipse+Maven环境准备 一个完整的解决方案通常都会包含多个项目, 这些项目往往会有一些公用的依赖, 比如都依赖 SpringBoot, 各 阅读全文
posted @ 2018-12-01 16:50 harrychinese 阅读(1748) 评论(0) 推荐(0) 编辑
摘要: 本文主要参考了 https://segmentfault.com/a/1190000016449865 , 感谢作者的付出. 另外, 在本文中, 演示了Windows+Maven+Docker Toolbox环境下的制作全过程. 和 CI 工具的集成, 可以参考下面文章: https://sprin 阅读全文
posted @ 2018-11-30 15:09 harrychinese 阅读(7096) 评论(0) 推荐(0) 编辑
摘要: 很多 Java 基础的东西都忘记了, 有必要再复习一些基本的知识点. 本文主要参考 https://github.com/Snailclimb/JavaGuide Java 访问限定符的可见性 参考: https://o7planning.org/en/10319/access-modifiers- 阅读全文
posted @ 2018-11-27 16:39 harrychinese 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 自定义异常类 稍具规模的项目, 一般都要自定义一组异常类, 这样做的好处是:1. 可以充分利用异常的中断特性, 简化代码的逻辑控制. 2. 在自定义的异常类, 可以设置 BusinessErrorCode 和 error message, 有了统一的 BusinessErrorCode, 排查和联调 阅读全文
posted @ 2018-11-24 21:02 harrychinese 阅读(2551) 评论(1) 推荐(0) 编辑
摘要: 视图函数返回 status code 的方式 Spring 有一个专门的枚举类型 HttpStatus, 比如 HttpStatus.NOT_FOUND1. 视图函数返回 ResponseEntity 类型的对象. 2. 在 exception 类加注解 @ResponseStatus, 一旦视图函 阅读全文
posted @ 2018-11-22 13:17 harrychinese 阅读(2255) 评论(0) 推荐(1) 编辑
摘要: JSR 303 规范了bean validation, Hibernate validator实现了JSR 303所有的规范, 同时也是最常用的validator 工具包. 使用 Hibernate validator 可以大大简化数据验证工作. 对于 Web 项目, 通常前端需要做一些输入验证, 阅读全文
posted @ 2018-11-20 17:51 harrychinese 阅读(1898) 评论(0) 推荐(0) 编辑
摘要: Web UI项目中, 很多 Spring controller 视图函数直接返回 html 页面, 还有一些视图函数是要重定向或转发到其他的 url 上. redirect 和 forward的区别: 重定向 redirect: 完整的重定向包含两次request-response过程, 第一次是访 阅读全文
posted @ 2018-11-19 18:19 harrychinese 阅读(107564) 评论(1) 推荐(2) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 15 下一页