文章分类 - JAVA
摘要:java中万物皆对象,而对象的来源则是类class。从写出来的代码,到运行过程的作用,都是怎么完成的呢? 且让我们一步步看来。 当我们写完java代码后,第一步,编译打包,这个过程就会将java代码编译为class字节码,然后就可以到处在java环境中运行了。 java应用是运行于jvm之上的的,那
阅读全文
摘要:kafka 是 linkedin 公司开发的,为解决用户行为日志而产生; kafka的最初目的并非消息队列组件,而流式处理平台; 只是其中有的功能看起来像一个消息队列组件; 1. 发布订阅功能; 2. 存储流式日志数据; 3. 实时处理流式数据; kafka安装很简单,主要是要调整下一些配置参数。b
阅读全文
摘要:由于各种原因,我们都可能不会一直使用同一个redis实例,从而需要在不定的时候进行切换。 切换数据本身应该只是一个更改链接的过程而已,但进行数据源切换的唯一要点就是,原有数据如何平滑迁移到新实例,从而可以实现无缝迁移! 网上进行redis数据库迁移的方式罗列: 1. redis-dump, 2. 基
阅读全文
摘要:因 mq server 就只有一台,而测试环境又是n套,并不像线上环境一样,任意消费都是成立的。所以,需要进行定向消费功能开发! 如果让自己来做mq的定向消费,应该怎么做? 因为rabbitmq 是用 erlang 写的,而它目前是没有提供这种功能的,这种功能也多半只是在特殊的测试环境用得上! 所以
阅读全文
摘要:对于远程通信,往往都会涉及到数据持久化传输问题。往大了说,就是,从A发出的信息,怎样能被B接收到相同信息内容!小点说就是,编码与解码问题! 而在dubbo或者说是java的远程通信中,编解码则往往伴随着序列化与反序列化! 普通java对象要想实现序列化,一般有几个步骤: 1. 实现 Serializ
阅读全文
摘要:springboot 说是没有新技术,但是刚开始用的时候,总有许多疑问,它是怎么做到的?让我们通过源码来解释吧! 让我们来看一个springboot项目的启动过程吧! 启动类,即一个main入口: 运行该方法后,springboot服务就起来了! 其作用就是,通过注解加入一些配置,然后交由Sprin
阅读全文
摘要:转载自:https://www.cnblogs.com/w-y-c-m/p/8443892.html 本文从源码层面简单讲解SpringMVC的参数绑定原理 SpringMVC参数绑定相关组件的初始化过程 在理解初始化之前,先来认识一个接口 HandlerMethodArgumentResolver
阅读全文
摘要:业务场景:由于多个业务系统都实现了同一个服务,在调用中通过读取相关配置可以知道此次调用是限制请求到哪几个服务提供者上,而不是所有提供者中任取一个,这个就需要在dubbo上自定义自己的路由规则。 具体做法:实现Router接口,重写route方法,从注册中心所有服务提供者列表中选出符合规范的提供者列表
阅读全文
摘要:Dubbo的Filter机制,是专门为服务提供方和服务消费方调用过程进行拦截设计的,每次远程方法执行,该拦截都会被执行。这样就为开发者提供了非常方便的扩展性,比如为dubbo接口实现ip白名单功能、监控功能等等。 怎样添加filter? 1. 基于xml配置文件配置filter 1、自定义Filte
阅读全文
摘要:jdk8中是如何解决jdk7中的HashMap死循环的? HashMap死循环问题,作为考核一个袁同学的知识功底和经验水平,大家津津乐道!对于没有真实遇到过这种问题的同学,可能也没有去研究过这种问题的同学,真是害苦了! 具体是啥问题呢? 我简单描述下: 某同学将HashMap()作为一个共享变量,供所有线程使用,然后还乐呵呵地进行put/get/remove..., 然后后来他的cpu被打...
阅读全文
摘要:请参考: https://blog.csdn.net/majinggogogo/article/details/71715846 获取数据源的接口如下: 数据源DataSource对象什么时候创建数据库连接 当我们需要创建SqlSession对象并需要执行SQL语句时,这时候MyBatis才会去调用
阅读全文
摘要:决战618京东技术,这是一本技术很露骨的书,可以让很多没有真正处理过大数据的同学茅塞顿开!内容基本来自书箱,不具原创性,仅供参考! 这是一本介绍京东的书,也是一本技术架构参考的书。里面详细或简略地介绍了京东的实现方案,都会给你带来一定的提示作用。 京东其实已经将现有互联网公司尤其是电商公司需要用到技
阅读全文
摘要:slf4j通过提供一个可变的接口,从而使各日志组件可以方便接入自己的实现,从而实现统一市面上各式各样的日志组件使用。从而减轻大家的开发压力,即使是下次更换日志组件,也无需更改原有其他代码。 另外,因为java中中间件大面积使用,也急需一个统一的日志组件格式,但是却不应该限制用户使用任何日志组件。所以
阅读全文