- 博客(13)
- 收藏
- 关注
原创 kafka API-KafkaConsumer类
一个客户端从Kafka集群中消费records客户端处理:Kafka broker失败;当集群中topic和partition的变化客户端也随之进行对应的反应;和broker协调对消费组进行负载均衡;和broker维持tcp连接与释放;consumer是非线程安全的(非同步访问会产生ConcurrentModificationException)。偏移和消费者位置(Offsets and Consumer Position)offsets是record在partition中的唯一标识,也表示
2020-07-09 21:25:46 215
原创 netty入站出站
刚开始看netty入站出站真是个难以理解的问题,总觉得当初设计它的人是不是瓦特了,但是明白之后却发现它有它的道理,需要我们要有一定的理解。in:InboundHandlerout:OutboundHandler上面代码表示为:pipline.addLast(in1) .addLast(out2) .addLast(in2) .addLast(out1);上面这种图着实不好理解,尤其是在使用netty函数的时候,现在先想一下,socket发送和接收消息的模型。入站:消息进入接收缓
2020-06-23 23:59:20 1533 4
原创 异步、同步、阻塞和非阻塞的一些概念
1、IOIO就是指输入和输出,最常见的一些IO有网络IO(也就是socket IO),文件读写和键盘输入、屏幕输出,IO就涉及到操作系统用户态和内核态的切换。简单来说就是CPU的权限变了,当CPU在用户态,应用程序对硬盘的文件等没有读写权限,当CPU在内核态,CPU就有了这些权限,所以说,应用程序中的读写文件操作是由操作系统在内核态下调用系统函数完成的,操作系统读写成功之后就会把结果返回给应用程序,这又涉及到用户态内存空间数据和内核态内存空间数据拷贝的问题。内核态用户态可以看下面这篇文章:http
2020-06-14 23:57:49 232
原创 静态、动态代理的若干问题
1、JDK动态代理实现步骤:(1)第一步,实现InvocationHandler接口Subject implements ISubject{ sayHello();}InvocationHandlerImpl implements InvocationHandler{ //委托类,就是被代理的那个类 ISubject subject //构造函数,注入委托类t对象 InvocationHandlerImpl(ISubject subject){ this.subject = subje
2020-06-12 18:08:19 162
原创 RabbitMQ基本概念
RabbitMQ是使用Erlang语言实现的消息队列,它可以用来限流。1、基本概念Broker:接收和分发消息,可以包含多个virtualhostVirualhost:Virualhost与Virtualhost之间是相互独立的,Virtualhost内包含Exchange和queue,Exchange:把消息路由到指定的queueBinding Key:binding key(也叫routing key)保存在Exchange的查询表中,大概存放格式为<binding key,queue&
2020-06-10 22:00:50 145
原创 原码、反码、补码 和位移符号
正数的原码、反码、补码是相同的,所以这里不讲正数的原反补,只讲负数。前提知识:1)符号位“0”代表正,符号位“1”代表负;2)负数的反码由原码各数据位取反、符号位不变得到;3)负数的补码由反码加1得到;4)计算机运算均以补码形式运算,这是说 + - * % >> << >>>这些操作都是用补码计算。反过来,负数的反码可由补码减1得到,负数的补码...
2019-05-26 12:59:00 992
原创 SSM controller层使用service层serviceImp对象为null
问题:显然@Autowired作用是想注入ClientServiceImp对象,但是此时spring容器并没有创建这个对象原因:spring没有扫描到HelloConntroller.java文件,spring容器自然也不知道要创建ClientServiceImp对象解决办法:把<context:component-scan base-package="com.ssm.handle...
2019-03-09 21:33:36 2362
原创 flask incorrect string value 1366 /mysql存储中文/alembic_version
1、incorrect string value 1366这个问题实际上是数据库编码的问题,但当时没有详细阅读报错信息导致认为是数据库连接或者是SQLAlchemy方面的问题,这个报错对于经常手动操作数据库的人来说应该是简单明了的吧网上大多数的解决方法是use 数据库名 ;alter database 数据库名 default character set 'utf8';在我这里无效,哈哈...
2018-11-28 10:57:00 338
原创 指针、函数指针参数、结构体指针、数组指针
一、int d = 9;printf(&quot;%d,%d\n&quot;,&amp;amp;d,d);&amp;amp;d是变量名d的地址,也是值9所在内存单元的地址d是值二、int *c;c = (int *)malloc(sizeof(int)*2);c[0] = 1;c[1] = 2;int b[2] = {1,2};printf(&quot;c :%d,%d
2018-11-24 21:56:45 305
原创 python装饰器的三种形式
一、基本装饰器 (@f)def f1(h1): def f2(args_of_h1): print('previous') h1(args_of_h1) print('after') return f2@f1def h1(args_of_h1): print(args_of_h1)h1('this is h1')结果:previousthis is h1a...
2018-11-07 11:11:28 364 1
原创 如何进入python的venv下的命令行
如下图,我的工程名为spider,在cmd命令行框(winows中是cmd,和pycharm中的terminal框是一样的)中定位到目录spider\venv\Scripts下,然后输入activate,即可进入到venv的命令行中,在venv中如果想运行.py程序,依然要定位到.py程序所在的目录下app.py在F:\Opencv_project\python_proj_c\spider...
2018-10-13 10:01:11 11231
原创 将普通java项目变成java web项目/eclipse上项目部署在tomcat上出错的通用解决方法
一旦项目部署在tomcat上出现错误1、删除项目与tomcat的关联右击项目-&gt;run as-&gt;run configuration如图右击delete2、删除eclipse上的旧的tomcat并新建一个windows-&gt;preferences-&gt;server-&gt;runtime environment先把表格中的tomcat删除(remove),再添加...
2018-10-08 20:28:31 296
原创 错误提示 java.lang.NoClassDefFoundError: org/springframework/core/ResolvableTypeProvider 的版本问题
我的情况是这样的,我没有用maven,这个时候我也不知道maven 是什么,但是这个问题呢,有一种情况可以确定是版本问题先来看3.2.3的版本spring-core/spring-core-3.2.3.release.jar可以发现没有ResolvableTypeProvider.class而在spring-core/spring-core-4.3.18.release.jar版本中...
2018-10-05 11:48:33 8747 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人