- 博客(26)
- 收藏
- 关注
原创 RabbitMQ学习总结-延迟消息
一致不被消费的信息/过期的信息/被标记nack/reject的信息,这些消息都可以进入死信交换机,但是首先要配置的有私信交换机。像我们买车票,外卖订单,如果下了单没付款,都会显示一个30分钟后未支付将进行取消订单,这种都算是延迟消息,设置了过期时间,一直不消费,到期后就会进入死信队列。3.对于订单的延迟消息,应该主动去查询是否已经支付成功,可以定时去发送消息,查询状态,确认是否已经状态改变。安装组件后,在使用时,基于注解要声明延迟交换机。发送延迟消息:设置延长时间。
2024-03-15 17:05:49
689
原创 RabbitMQ学习总结-消息的可靠性
对于以上三种回执,基本回执都是固定的,AMQP提供了消息确认的方式,不用写代码,配置就可以,配置有三种:none-配置它失败了,消息会被删除,auto-失败了,消息会回到MQ重新投递,不会丢失,不会被删除,manual-太麻烦,算了。3.2 生产者有重试机制,消费者也有重试机制,但是,对于消费者的重试,如果一直失败,那就要有一定的策略,可以把这个失败的消息放到另一个交换机上,后续人工进行干预,这样可以保证消息不丢失。保证MQ消息的可靠性,主要从三个方面:发送者确认可靠性,MQ确认可靠性,消费者确认可靠性。
2024-03-13 18:31:03
477
原创 RabbitMQ学习总结-基础篇
1.RabbitMQ 本身是一个消息中间件,在服务应用中,可解决高性能,高并发,高应用的问题,极大程度上解决了应用的性能问题。2.MQ的使用分为生产者和消费者,生产者生产消息,消费者去消费消息。3.MQ的主要组成部分,交换机/队列/路由键,生产者生产消息可以直接到队列,然后消费者消费,也可以通过交换机再到队列。在真正的生产应用中,基本都是通过交换机再到队列,根据路由键准确的到达消费者。4.交换机/队列/路由键是独立的三部分,是需要互相绑定的,交换机需要绑定队列,队列绑定路由键,如图:5.
2024-03-13 11:30:41
586
原创 微服务网关路由学习总结
3.网关作为一个单独的服务使用,必须要引入一些网关需要的依赖,比如网关注册到nacos,那就要依赖注册中心,网关要实现负载均衡,就要负载均衡的依赖,当然,网关自身的依赖肯定是少不了的,目前都是基于springCloud开发,所以自身的网关依赖就是SpringCloud有自己提供的jar包支持,2.网关自动进行负载,实际生产中,一个应用会部署到很多服务器,但是服务名称是一样的,弯管会根据目标服务名称,自动进行负载路由不同的IP上去。5.自定义过滤器:自定义过滤器有两种,一种是。
2024-03-13 10:52:16
325
原创 OpenFeign的学习总结
1.Fegin调用只有在微服务之间才会使用,以前的单体项目用不到,因为单体项目不会涉及到分库的概念,并且单体项目就一个应用,想用的功能都可以直接方法调用,但是微服务就不行,跨服务的调用只能通过http的操作,这很像以前的单体项目不同产品之间的调用,或者前端与后端的调用。Fegin调用的实质还是http的调用。现在微服务之间调用如果还是写以前的http://ip:端口/访问路径,代码实现起来就会很麻烦,所以出现了Feign,底层做了HTTP的集成,让开发者省略了这其中的麻烦,开发更便捷。--负载均衡器-->
2024-03-08 11:06:04
494
原创 Nacos的学习总结
5.如果一个服务应用部署了多个端口,服务会自动负载到不同的机器,nacos本身作为注册中心,就有负载均衡的功能,对于网关路由来讲,网关只是去找服务的名字,并没有去找端口,所以交易从网关进来,网关直接去注册中心找服务名称,所以会找到不同IP/端口的同一个应用,实现负载均衡。4.关于nacos使用,对于应用服务来讲是少不了引入nacos的依赖,谁使用谁引入,谁项注册到nacos服务谁引入,并且要在配置文件中配置nacos的地址及端口,--nacos 服务注册发现-->依赖如下:服务方在pom.xml引入,
2024-03-08 09:50:17
423
原创 Java中对XML格式数据的四种解析方式,代码示例解析
首先我们来了解一下什么XML格式。XML全称为Extensible Markup Language,是一种通用的数据交换格式,具备平台无关性、系统无关性、语言无关性等优点,在数据交互中带来极大地便利。值得一提的是,在不同语言环境中的解析方式都是一样的,只不过实现的语法不同罢了。XML文件解析的方法有四种,分别为:DOM解析、SAX解析、JDOM解析、DOM4J解析。其中前两种属于基础方
2017-09-30 14:51:45
4246
转载 eclipse 项目中嵌入jetty
Jetty是一个提供HHTP服务器、HTTP客户端和javax.servlet容器的开源项目,Jetty 目前的是一个比较被看好的 Servlet 引擎,它的架构比较简单,也是一个可扩展性和非常灵活的应用服务器,它有一个基本数据模型,这个数据模型就是 Handler,所有可以被扩展的组件都可以作为一个 Handler,添加到 Server 中,Jetty 就是帮你管理这些 Handler。
2017-09-30 10:42:10
899
原创 Linux下Oracle启动与停止
1. linux下启动oraclesu - oraclesqlplus /nologconn /as sysdbastartupexitlsnrctl startexit2. linux下关闭oraclesu - oraclesqlplus /nologconn /as sysdbashutdown immediate
2017-07-19 17:44:23
274
转载 linux下用rpm 安装jdk 7的jdk-7u79-linux-x64.rpm
linux下用rpm 安装jdk 7的jdk-7u79-linux-x64.rpm步骤一、下载jdk的rpm安装包步骤二、如果linux是centos的话,请先卸载openjdk,参考文档:使用rpm命令卸载CentOS 6.4自带的OpenJDK步骤三、安装jdk-7u79-linux-x64.rpm安装包先执行以下命令给所有用户添加可执行的权限#chmod +x jdk-7
2017-07-19 17:26:16
2293
转载 config.sh: line 103: /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.79.x86_64/bin/java
我们在Linux操作系统上安装weblogic并创建weblogic域的时候,会经常遇到找不到对应的jdk。情况一:安装完weblogic后,通过 ./setWLSEnv.sh设置weblogic的环境变量的时候,报下面这个问题:[plain] view plain copy The JDK wasn't found in directory /usr/li
2017-07-19 17:25:22
4955
1
转载 weblogic unable to get file lock问题
原文地址:http://blog.youkuaiyun.com/skiof007/article/details/7986893非正常结束weblogic进程导致weblogic无法启动由于先前服务器直接down掉了,所有进程都非正常的进行关闭了,也就导致了下次启动weblogic的时候报了以下错误: 解决办法一.删掉Domain下的*.lok文件
2017-07-19 17:24:28
299
转载 oracle查看允许的最大连接数和当前连接数等信息
oracle查看允许的最大连接数和当前连接数等信息标签:oracle 最大连接数 并发连接数 两个参数间的关系:sessions=1.1*processes+5目前总结的语句,在查看数据的连接情况很有用,写完程序一边测试代码一边查看数据库连接的释放情况有助于分析优化出一个健壮的系统程序来。
2017-07-19 17:23:31
252
原创 oracle 创建用户,表空间,给权限,设置表空间自动增长
1.创建用户su - oracle sqlplus /nolog SQL> conn / as sysdba; SQL>create user zhangsan identified by zhangsan SQL> grant dba to zhangsan ; SQL> conn zhangsan /zhangsan SQL> select *
2016-12-05 16:38:43
9469
原创 JAVA this与super的用法区别
1)super(参数):调用基类中的某一个构造函数(应该为构造函数中的第一条语句) 2)this(参数):调用本类中另一种形成的构造函数(应该为构造函数中的第一条语句)3)super: 它引用当前对象的直接父类中的成员(用来访问直接父类中被隐藏的父类中成员数据或函数,基类与派生类中有相同成员定义时如:super.变量名 super.成员函数据名(实参)4)this:它代表当前对
2016-12-05 14:52:05
236
原创 Windows下的SVN备份与还原
Windows下的SVN备份与还原1.将test2库中的两个jar包备份到库TEST中命令:还原命令:、 看结果:只能在SVN客户端看成功!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!注意:这个问题纠结了一天,最终发现是搞错了库,1.SVN备份与还原都是在服务上的库进行的,并不是下载的那个库
2016-12-02 17:23:10
6963
原创 orcale连接数据库的实例
/** * 一个非常标准的连接Oracle数据库的示例代码 */public void testOracle(){ Connection con = null;// 创建一个数据库连接 PreparedStatement pre = null;// 创建预编译语句对象,一般都是用这个而不用Statement ResultSet result = nul
2016-12-01 17:21:17
342
原创 jquery 学习笔记
//引用js文件$.noConflict(); //替换jq与其他冲突时候的写法jQuery(document).ready(function(){ jQuery("button").click(function(){ jQuer
2016-11-15 14:25:39
210
转载 马士兵(hibernate)学习笔记
马士兵hibernate(原始笔记)课程内容 1 HelloWorlda) Xmlb) annotation2 Hibernate原理模拟 - 什么是O/R Mapping以及为什么要有O/R Mapping3 常见的0/R框架(了解)4 hibernate基础配置(重点)5 ID生成
2016-11-15 14:23:26
1489
转载 关于 Java 数组的 12 个最佳方法
1。声明一个数组String[] aArray = new String[5];String[] bArrary = {"1","2","3","4"};String[] cArrary = new String[]{"1","2","3","4"};I2.输出一个数组 int[] intArrary = {"1","2","3","4"};String int
2016-10-26 13:50:58
230
原创 详解Linux下安装配置Nginx
1. 从Nginx官网下载Nginx。目前最新的稳定版为:1.6.2.2. 将下载下来的Nginx上传到/opt/nginx目录下。运行“tar -zxvf nginx-1.6.2.tar.gz”进行解压。3. 切换到/opt/nginx/nginx-1.6.2目录下,运行./configure进行初始化配置。如出现下面的提示,说明该机器没有安装PCRE,而Nginx需要依赖PCRE,需要
2016-09-08 09:30:47
279
转载 利用Session完成用户的登录和注销 .
用户的登录和注销是最常见的Web应用案例,当一个应用的客户登录了以后,其他所有的会话都得知道这个用户已经登录还很有可能得提取用户的昵称予以显示等等,所以,只有把登录成功的用户的信息放入到Session中才能够办到使所有的Servlet都能访问到用户的登录状态,下面把这个案例放上来。 第一是登录的界面,是HTML的一个表单,非常的简单登陆界面 帐号:
2016-07-13 10:57:10
640
转载 this.getsession和this.getHibernateTemplate().getSessionFactory().getCurrentSession()/OpenSession区别 .
这个是hibernate与spring整合开发,让DAO继承了spring的HibernateDaoSupport,这样的确能够提高开发效率 ,但是不够灵活,而且使DAO层依赖于spring的api,增加了耦合。但是不考虑复用的话还可以。 下面一个一个的分析: this.getsession实际上是调用了父类中的方法获得session。使用spring管理hibernate的Sessio
2016-07-07 13:48:50
1157
原创 JAVA输出,如何导出EXCEL文件中的内容
public static void main(String[] args) throws BiffException, IOException { //通过输入流获取磁盘上的文件InputStream is = new FileInputStream("E:\\按时地方.xls"); try { //根 据输入流创建对象Workbook wb = Workbook.getWo
2016-06-02 17:34:44
474
转载 Java如何对ArrayList里的元素排序
import java.util.ArrayList;import java.util.Collections;import java.util.Comparator; public class T { public static void main(String[] args) { ArrayList list = new ArrayLis
2016-05-20 11:26:50
259
转载 Java学习之Iterator(迭代器)的一般用法 (转)
迭代器(Iterator) 迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。 Java中的Iterator功能比较简单,并且只能单向移动: (1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一
2015-12-04 10:41:27
277
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人