自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 golang协程间通信的思考

第二协程间以管道方式通信,并没有解决协程间管道寻址问题,即我要跟另外一个协程通信,那么必须找到另外一个协程的管道,并且协程间通信如果要做到通用,也要定义一个统一的管道通信结构体;此方案优点是简单,对于跨进程节点的协程通信,可以存储对应连接的SOCKET,把管道通信和SOCKET通信封装成统一的参数接口,即可实现通用的本节点协程间和跨节点协程间的通信;定义一个全局的集合,每个协程生成一个唯一的ID和唯一的管道,根据协程ID可以查找到对应的管道,协程可以注册一个唯一的别名,根据别名也可以查找到协程唯一ID;

2023-06-20 09:33:12 475

原创 从零开始搭建高负载java架构(07):Caffeine缓存

缓存实现目标:1. 简单的本地缓存需求,使用注解的方式只提供caffeine的缓存方案2. 数据库的缓存提供二级缓存支持,先从本地获取caffeine缓存,没有再从redis获取二级缓存,缓存都没有才从数据库加载数据3. 提供手动调用缓存接口,对复杂的缓存需求需要提供侵入式的缓存实现方案修改pom.xml添加依赖 :1. 修改nacos配置,添加以下配置项:2. 修改Application启动类,添加注解@EnableCaching 3. 在需要缓存的接口添加缓存相关的注解@CachePut

2023-05-17 19:30:27 126

原创 从零开始搭建高负载java架构(06):gateway网关节点(sentinel篇)

1. 下载sentinel 1.8.6最新版本2. 启动sentinel控制后台其中,6003是控制后台的端口,启动后,通过网页访问:http://127.0.0.1:6003默认的登录名和密码:sentinel。

2023-05-16 09:54:29 259

原创 从零开始搭建高负载java架构(05)——gateway网关节点(权限验证篇)

【注意】另外,如果要通过数据库或redis查找用户信息,可以重载实现ReactiveUserDetailsService的接口findByUsername,从其他数据源里查出user数据转成UserDetails对象,如果除了用户名和密码,还有其他额外的用户信息需要保存,可以重置UserDetails类,添加额外的信息。

2023-05-11 15:23:26 1478

原创 从零开始搭建高负载java架构(04)——gateway网关节点(动态路由)

4. NacosDynamicRouteDefinitionRepository的getRouteDefinitions里判断如果是首次调用,则主动读取nacos配置,初始化网关的路由信息;如果不是首次调用,则从缓存的路由信息列表里汇总出总的路由列表返回。3. 为每个路由组增加对应的监听配置更新的事件,在监听到某个路由组有更新时,读取该路由组的详细路由信息(Json格式),缓存到以"nacos命名空间_nacos的dataId_nacos的group"为索引键的路由信息列表里。

2023-05-08 18:45:11 532

原创 从零开始搭建高负载java架构(03)——gateway网关节点(基础篇)

另外创建转发的测试业务节点:order-service, pom.xml和bootstrap.yml基本与网关相同,不加载gateway依赖就行,nacos配置只要配置:actuator的监控端口和web服务端口即可;2. 如果网页访问不了网关端口,确认网关等应用都启动的情况下,用telnet检查防火墙是否开放了端口,没有则用firewall-cmd命令开放相应的端口。1. 192.168.10.111是我自己本地架设的centos8的机器地址,按实际的网关所在机器地址配置。

2023-05-06 11:22:48 438

原创 从零开始搭建高负载java架构(02)——Nacos配置

2. 登录MySQL,选择nacos_config数据库,导入nacos的sql表结构:nacos/conf/mysql-schema.sql。【注意】如果是测试阶段启动单节点模式测试,启动命令:sh ./bin/startup.sh -m standalone。3. 修改nacos/conf/application.properties配置,添加mysql参数。4. 修改集群配置nacos/conf/cluster.conf (一行一个节点,格式是IP:端口)系统centos7 64位。

2023-05-04 12:00:20 339

原创 从零开始搭建高负载java架构(01)

今年要回佛山发展,想转java方向,为此以学习研究的方向开始今天的文章,如有哪里说得不对的地方,请多多指教。本次以搭建微服务架构为主题。

2023-04-24 20:36:50 259

原创 用rustdesk自建远程服务

rustdesk自建远程桌面服务器

2022-11-29 09:25:51 2126

原创 Webgl可视化常规矩阵JS代码

1. 4*4 矩阵的行列式:function determinant(out, a) { let a00 = a[0], a01 = a[1], a02 = a[2], a03 = a[3]; let a10 = a[4], a11 = a[5], a12 = a[6], a13 = a[7]; let a20 = a[8], a21 = a[9], a22 = a[10], a23 = a[11]; let a30 = a[12], a31 = a[13], a32 =...

2021-03-18 16:33:40 184

原创 文件共享samba安装配置

以Centos系统为例:yum -y install samba修改配置文件:/etc/samba/smb.conf设置访问目录:[art]comment = 美术资源path = /data/samba_share/art_res/printable = nobrowseable = noguest ok = nopublic = nowritable = yescreate mask =0775force createmode = 0775dire

2020-10-24 12:57:02 156

原创 Lua多线程处理

本示例采用Lua5.3.4版本(没有在全局state中加锁,可能向_G变量插入元素时会有多线程问题,后续测试有问题再修改,先记录一下,只在lua_State中定义锁,是为了实现每条线程创建独立的对应的lua_State,防止多线程间全局锁互相等待) 1.修改lua_State结构体 src/lstate.h 修改lua_State结构体,加上线程锁对象(用递归锁防止出现重复锁问题): pt

2018-01-17 21:00:32 1385

原创 C++简单的automake脚本

在工程根目录下执行autoscan命令自动生成configure.scan文件把configure.scan文件重命名为configure.in修改configure.in内容如下两处宏参数: # 其中server是指定生成的程序名 AM_INIT_AUTOMAKE(server, 1.0) # 其中Debut/makefile是指定生成的makefile的路径 AC_CONFIG_F

2018-01-12 01:05:23 559

原创 vim根据不同的文件名后缀生成头部注释

自动创建文件头部注释的脚本自动更新文件的修改时间此脚本目前支持这些后缀:.cc, .sh, .java, .cpp, .h, .hpp, .py, .lua自动创建文件头部注释的脚本把脚本保存为file_format.vim, 并存放在~/.vim/macros/目录下;编辑~/.vimrc文件,在文件末尾加入run macros/file_format.vim,即可

2018-01-12 00:37:37 1916

原创 自动生成project插件的工程目录

把如下shell代码保存到shell脚本文件中,如: generate_project.sh在工程的根目录执行如下命令: sh generate_project.sh $(pwd) > proj打开vim, 输入:Project proj 即可使用 在打开的工程proj文件的根目录上用\R命令即可显示指定后缀的文件#!/bin/shfunction process_path()

2018-01-12 00:31:33 764

原创 Linux运维日常命令

设置centos系统产生core设置centos系统产生core 编辑/etc/security/limits.conf文件,在文件末尾加入如下一行: * soft core 0修改用户core文件的大小限制 ulimit -c unlimited编辑core文件名格式 echo “core.%p.%e” > /p

2018-01-12 00:12:29 232

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除