songyuequan
码龄10年
关注
提问 私信
  • 博客:238,522
    动态:21
    238,543
    总访问量
  • 71
    原创
  • 1,874,874
    排名
  • 48
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2014-11-06
博客简介:

江湖书苑

博客描述:
——练拳不练功 到老一场空
查看详细资料
个人成就
  • 获得54次点赞
  • 内容获得33次评论
  • 获得214次收藏
  • 代码片获得291次分享
创作历程
  • 14篇
    2021年
  • 7篇
    2020年
  • 36篇
    2019年
  • 23篇
    2018年
  • 4篇
    2017年
  • 3篇
    2016年
  • 10篇
    2015年
  • 4篇
    2014年
成就勋章
TA的专栏
  • soul从入门到进阶
    6篇
  • Linux 入门到进阶
    16篇
  • windows 配置
    6篇
  • Spring
    2篇
  • Git旁通
    14篇
  • 正则表达式
    3篇
  • 数据库
    4篇
  • opensips
    3篇
  • 计算机组成原理
    1篇
兴趣领域 设置
  • 学习和成长
    面试
创作活动更多

AI大模型如何赋能电商行业,引领变革?

如何使用AI技术实现购物推荐、会员分类、商品定价等方面的创新应用?如何运用AI技术提高电商平台的销售效率和用户体验呢?欢迎分享您的看法

175人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

quartz定时任务修改系统时间后不执行

修改了服务器时间以后,原有的定时任务不执行了,其实定时器并没有失效,而是trigger定时调用以后会自动记录下一次调用的时间,当修改系统时间以后,假如修改后的时间靠后了,那你的定时调度任务将无法执行,假如修改后的时间靠前了,那定时调度任务是可以定时执行的...
转载
发布博客 2021.11.03 ·
1363 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

网络IO模型演进04——epoll模型示例

1. 简介epoll 是Linux内核为了解决io问题而引入的一种机制,避免了poll模型的几个缺点poll每次系统调用都要传递文件描述符集合,epoll在内核开辟了一个空间来存储文件描述符集合poll系统调用,内核每次都要遍历文件描述符集合,epoll通过和网卡中断做关联,避免了遍历文件描述符集合2. 笔者环境Ubuntu 18.04JDK1.83. 示例代码vim SocketMultiplexingSingleThreadv1.javajavac SocketMult
原创
发布博客 2021.03.10 ·
307 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

网络IO模型演进03——poll模型示例

1. 简介在 nio 模型中,需要在应用程序不断的做read系统调用,消耗系统资源,这个复杂度是O(n),但是这些read中有很多是无效的,从而引出了poll模型。在poll模型中,省去了在用户空间做O(n)复杂度的read系统调用,节省了大量的资源2. 笔者环境Ubuntu 18.04JDK1.83. 示例代码vim SocketMultiplexingSingleThread.javajavac SocketMultiplexingSingleThread.javast
原创
发布博客 2021.03.10 ·
417 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

网络IO模型演进02——NIO模型示例

1. 简介BIO 全称 Blocking IO , 也就是阻塞IO,这里的阻塞体现在两个方面,- accept内核分配的Socket资源后,阻塞的等待客户端的连接- 读取客户端发送的数据时是阻塞的2. 笔者环境- Ubuntu 18.04- JDK1.83. 示例代码vim SocketNIONonBlocking.javajavac SocketNIONonBlocking.javastrace -ff -o out java SocketNIONonBlockingim
原创
发布博客 2021.03.08 ·
189 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

网络IO模型演进01——BIO模型示例

1. 简介BIO 全称 Blocking IO , 也就是阻塞IO,这里的阻塞体现在两个方面,- accept内核分配的Socket资源后,阻塞的等待客户端的连接- 读取客户端发送的数据时是阻塞的2. 笔者环境Ubuntu 18.04JDK1.43. 安装JDK1.4注意这里要演示原始的BIO模型,需要使用JDK1.4来编译;如果使用JDK8编译,会发现在系统调用层面使用的是poll模型https://www.oracle.com/java/technologies/java-a
原创
发布博客 2021.03.08 ·
110 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

soul从入门到进阶06——运行soul-examples-dubbo

前面我们初步尝试了soul网关的http协议相关的功能。这篇我们来看一下 dubbo协议的功能。1. 启动soul-admin 和 soul-bootstrap省略 可参考 soul从入门到进阶01——soul网关初体验2. 启动 soul-example-dubbo打开命令行cd soul-examplescd soul-examples-dubbo可以看到分别是apache dubboe的example和 alibaba dubbo的example进入 soul-examp
原创
发布博客 2021.01.21 ·
541 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

soul从入门到进阶05——soul-bootstrap数据同步流程

我们在 soul-admin的数据同步流程中分析了admin的数据同步流程,这篇我们来看看soul-bootstrap的数据同步流程启动 soul-bootstrap打印如下日志,我们同样从日志着手来分析。日志中打印了 you use websocket sync soul data我们根据日志,找到WebsocketSyncDataConfiguration这个类2021-01-19 21:19:48.461 INFO 20364 --- [ main] b.s.s.d
原创
发布博客 2021.01.19 ·
229 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

计算机网络二层三层概要

简介本篇文章是笔者的分享计算机网络二层,三层知识的一个大纲综述分层只要是在网络上跑的包,都是完整的。可以有下层没上层,绝对不可能有上层没下层。网络设备都可以处理网络包理解计算机网络中的概念,一个很好的角度是,想象网络包就是一段 Buffer,或者一块内存,是有格式的。同时,想象自己是一个处理网络包的程序,而且这个程序可以跑在电脑上,可以跑在服务器上,可以跑在交换机上,也可以跑在路由器上。你想象自己有很多的网口,从某个口拿进一个网络包来,用自己的程序处理一下,再从另一个网口发送出去。数据
原创
发布博客 2021.01.19 ·
847 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

关于并发编程产生的问题的思考

计算机科学属于现代科学的一个门类。而现代科学的发展又依赖于哲学的发展。我们所处的时代是一个工商业文明的时代,整个时代的底层逻辑,是西方哲学体系。哲学本身的特点是不断的完善自己的模型,不断的推翻旧的模型。而科学作为哲学的一个产物,也继承了这个特性。哲学推演中有假设的方法。我们假设 计算机的CPU ,内存,I/O的速度是一样的,那么就不存在 CPU和IO的速度差异,线程在计算的时候,和I/O操作的时候,速度是一样的。那么就不存在,为了避免线程做I/O操作时,对CPU造成浪费。设计的线程调度。没有了线程切
原创
发布博客 2021.01.18 ·
114 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

soul从入门到进阶04——压测soul网关

这篇文章的主题是对soul网关进行压测笔者的环境MacBook Pro处理器 2.8 GHz 四核Intel Core i7内存 16 GB 1600 MHz DDR31. 压测soul-examples-http和第一篇一样,我们在IDEA启动soul里面提供的soul-examples-httpwrk -t16 -c200 -d30s http://localhost:8188/order/findById?id=1结果如下Running 30s test @ http://l
原创
发布博客 2021.01.17 ·
1559 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

soul从入门到进阶03——插件链调用流程

查看调用流程我们来尝试看一看http协议的网关调用流程1. 从日志入手首先看soul-bootStrap的日志,每次请求 http://localhost:9195/http/order/findById?id=1 都会打印以下日志2021-01-16 11:01:22.671 INFO 3969 --- [-work-threads-8] o.d.soul.plugin.base.AbstractSoulPlugin : divide selector success match ,
原创
发布博客 2021.01.17 ·
291 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

shell 编程概要

背景运维:目标:保障系统长期、稳定、安全运行工作内容;安装、配置、备份、监控、邮件报警、自动报警、物理世界CPU内存网卡磁盘资源角度计算存储网络一. 什么是shell脚本语言查看所有的脚本cat /etc/shells 做什么自动化批量系统初始化 (update,软件安装,时区设置,安全策略,防火墙、端口转发等)自动化批量软件部署 (LAMP,Tomcat,Nginx)管理应用程序自动化备份恢复程序(MySQL 完全、增量备份)
原创
发布博客 2021.01.17 ·
238 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

soul从入门到进阶02——soul-admin的数据同步流程

soul-admin 的数据同步流程分析在上一篇文章中我们提到,根据官网的介绍数据配置流程 soul网关的配置数据在修改后立即同步到soul gateway 中,不需要重启,性能高,生效快。这个特性也是网关这种中间件的基本需求,作为一个API网关,如果改一下配置还需要重启网关,基本失去了可用性。我们现在来看一看这块是如何做到 不需要重启,并且快速生效的。1. 寻找入口上一篇文章中,我们做了如下操作,这次我们打开浏览器的调试窗口,发现 请求的url是 http://localhost:9095
原创
发布博客 2021.01.15 ·
634 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

soul从入门到进阶01——soul网关初体验

笔者的环境MacBook Pro处理器 2.8 GHz 四核Intel Core i7内存 16 GB 1600 MHz DDR3其他环境准备 maven、jdk、git概要简介本篇文章主要是简单认识一下soul网关,搭建本机测试环境,熟悉整体框架读者可以参考soul极简入门,看一下soul的简介1. clone 并编译项目打开终端git clone https://github.com/dromara/soul.gitcd soulmvn clean install
原创
发布博客 2021.01.14 ·
754 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

使用docker配置MySQL主从复制

环境MacOSdocker$ docker versionClient: Docker Engine - Community Version: 18.09.1 API version: 1.39 Go version: go1.10.6 Git commit: 4c52b90 Built: Wed Jan 9 19:33:12 2019 OS/Arch: darwin/amd64
原创
发布博客 2020.11.30 ·
191 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

Ubuntu LTS 18.04设置静态IP

vim /etc/netplan/*.yml# This file is generated from information provided by# the datasource. Changes to it will not persist across an instance.# To disable cloud-init's network configuration capabilities, write a file# /etc/cloud/cloud.cfg.d/99-disa.
原创
发布博客 2020.07.06 ·
529 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

正则表达式元字符

基本正则表达式元字符元字符功能示例^行首定位符^love$行尾定位符love$.匹配单个字符l…e*匹配前导符0到多次ab*love.*任意多个字符[]匹配指定范围内的一个字符[L]ove[ - ]匹配指定范围内的一个字符[a-z0-9]ove[^]不在范围内的字符[^a-z0-9]ove\用来转义元字符love\\<词首定位符\<love\>词尾定位符love\
原创
发布博客 2020.06.04 ·
276 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux重命名root用户

vim /etc/passwd 将第一行的第一个root替换为重命名的用户root:x:0:0:root:/root:/bin/bashvim /etc/shadow 将这一行中的root 替换为重命名的用户root:$xxxxxxxxxx:18186:0:99999:7:::exit使用重命名后的用户登录id 查看当前用户id 为0 即是修改成功,...
原创
发布博客 2020.05.07 ·
5502 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

Windows重命名administrator账户

win+r 输入 gpedit.msc计算机配置——> Windows设置——> 本地策略——> 安全选项 ——> 账户: 重命名系统管理员账户重命名账户,重启后生效
原创
发布博客 2020.05.06 ·
1314 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

编译OpenJDK

编译环境Ubuntu Server 18.04 LTSapt install openjdk-11-jdk编译OpenJDK12 需要先安装OpenJDK11 以此类推下载OpenJDK12可以到这个页面中 点击zip 下载源码也可以执行以下命令下载wget -c https://hg.openjdk.java.net/jdk/jdk12/archive/0622...
原创
发布博客 2020.02.13 ·
577 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多