殷长庆
码龄13年
关注
提问 私信
  • 博客:172,302
    172,302
    总访问量
  • 106
    原创
  • 63,266
    排名
  • 93
    粉丝
  • 0
    铁粉
  • 学习成就

个人简介:海中月是天上月,眼前人是心上人

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:河南省
  • 加入CSDN时间: 2011-07-24
博客简介:

殷长庆的博客

查看详细资料
  • 原力等级
    成就
    当前等级
    4
    当前总分
    984
    当月
    6
个人成就
  • 获得95次点赞
  • 内容获得83次评论
  • 获得484次收藏
  • 代码片获得4,326次分享
创作历程
  • 1篇
    2024年
  • 5篇
    2023年
  • 28篇
    2022年
  • 4篇
    2021年
  • 65篇
    2020年
  • 3篇
    2019年
  • 1篇
    2018年
成就勋章
TA的专栏
  • 语音助手
    4篇
兴趣领域 设置
  • 大数据
    mysql
  • 后端
    spring架构
创作活动更多

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

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

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

JAVA+Netty简单实现Nginx反向代理网关功能【设计实践】

2、访客通过访问代理服务8888端口(例如http://127.0.0.1:8888/sso),代理服务接收到请求后解析请求路径得到(/sso),根据这个路径查询数据库配置,如果匹配到(/sso)对应的真实服务的IP和端口,那么代理服务会发起与真实服务的连接,并建立访客和真实服务的数据传输通道。本文实现一个类似于nginx或gateway的反向代理网关,实现思路是访客通过网络请求反向代理服务,代理服务连接到真实服务,维护访客和真实服务的数据交互。反向代理处理类,实现整个反向代理的主要功能。
原创
发布博客 2024.06.23 ·
658 阅读 ·
2 点赞 ·
2 评论 ·
6 收藏

snowboy+sherpa-onnx+Rasa+Coqui实现语音音箱【语音助手】

本系列主要目标初步完成一款智能音箱的基础功能,包括语音唤醒、语音识别(语音转文字)、处理用户请求(比如查天气等,主要通过rasa自己定义意图实现)、语音合成(文字转语音)功能。coqui主要在项目中完成接收rasa响应的内容,根据文本内容生成语音(TTS)。本文用到的一些安装包在snowboy那一篇的必要条件、和rasa的安装中已经完成了部分构建,coqui的api调用部分会把相关代码写到snowboy项目中,生成好语音文件后调用本机播放语音。
原创
发布博客 2023.08.08 ·
1486 阅读 ·
0 点赞 ·
3 评论 ·
4 收藏

snowboy+sherpa-onnx+Rasa实现聊天机器人【语音助手】

本系列主要目标初步完成一款智能音箱的基础功能,包括语音唤醒、语音识别(语音转文字)、处理用户请求(比如查天气等,主要通过rasa自己定义意图实现)、语音合成(文字转语音)功能。rasa主要在项目中完成接收语音识别内容,识别用户意图,根据意图执行相应动作,并将结果返回给调用端。本文用到的一些安装包在snowboy那一篇的必要条件中已经完成了部分构建,rasa的api调用部分会把相关代码写到snowboy项目中,处理完用户操作之后会打印响应信息。
原创
发布博客 2023.08.08 ·
2081 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

snowboy+新一代kaldi(k2-fsa)sherpa-onnx实现离线语音识别【语音助手】

本系列主要目标初步完成一款智能音箱的基础功能,包括语音唤醒、语音识别(语音转文字)、处理用户请求(比如查天气等,主要通过rasa自己定义意图实现)、语音合成(文字转语音)功能。语音识别、语音合成采用离线方式实现。语音识别使用sherpa-onnx,可以实现离线中英文语音识别。本文用到的一些安装包在snowboy那一篇的必要条件中已经完成了部分构建,在离线语音识别安装完成之后也会把相关代码写道snowboy项目中,语音唤醒之后调用语音识别翻译用户说话的内容。
原创
发布博客 2023.08.08 ·
7553 阅读 ·
5 点赞 ·
4 评论 ·
20 收藏

snowboy 自定义唤醒词 实现语音唤醒【语音助手】

准备唤醒词的音频文件录完之后自己检查以下声音有没有问题,如果命令报错可能是少安装包或者重新打开terminal。编辑一下Dockerfile,因为发现官网的不是慢就是其他报错编辑完成保存,然后构建镜像构建完成之后去运行容器生成自定义唤醒词模型执行完命令之后,model文件夹下会生成一个hotword.pmdl模型文件。
原创
发布博客 2023.08.07 ·
4251 阅读 ·
3 点赞 ·
7 评论 ·
22 收藏

JAVA+Netty根据二级域名实现多租户内网穿透功能【设计实践】

3、访客通过二级域名访问Nginx(c1.test.com),Nginx转发请求到服务端访客代理接口(16002端口),服务端监听到之后解析二级域名,获取客户端专用连接通道,创建访客ID,然后通过(server-client通道)向客户端发送指令,客户端接收指令后连接到真实服务端口(8080,可根据启动参数修改),连接真实服务成功后,客户端会重新向服务端建立一条连接(访客-server通道),服务端把访客和该通道进行绑定。这三步最终形成了(访客-Nginx-代理-客户端-真实服务)完整的通道。
原创
发布博客 2023.01.29 ·
2057 阅读 ·
0 点赞 ·
2 评论 ·
10 收藏

turnserver (coturn + redis) 配置ICE server 临时用户密码【实践】

前端连接turn服务时一般都需要设置账号密码,由于都是在js中配置的,长期凭据相对临时用户安全性会差很多,本文通过程序生成临时的账号密码,把临时凭据设置到Redis中,turn服务验证的时候直接对比Redis中的账号密码,当Redis中key过期时,turnserver返回Unauthorized校验不通过。本文用到docker、Redis,需要提前准备好。
原创
发布博客 2022.12.24 ·
1799 阅读 ·
3 点赞 ·
0 评论 ·
4 收藏

Java+Netty+WebRTC、语音、视频、屏幕共享【聊天室设计实践】

本文使用webtrc实现了一个简单的语音视频聊天室、支持多人音视频聊天、屏幕共享。​音视频功能需要在有Https协议的域名下才能获取到设备信息,正式环境可以申请一个免费的证书复杂网络环境下需要自己搭建turnserver,网络上搜索大多是使用coturn来搭建turn服务turn默认监听端口3478,可以使用webrtc.github.io测试服务是否可用本文在局域网内测试,不必要部署turn,使用的谷歌的stun:stun.l.google.com:19302
原创
发布博客 2022.12.09 ·
12566 阅读 ·
16 点赞 ·
7 评论 ·
95 收藏

webrtc /adapter-latest.js

发布资源 2022.12.09 ·
js

JAVA基于Netty实现内网穿透功能【设计实践】

本文实现了一个简单的内网穿透服务,可以满足代理基于TCP协议的项目,如Tomcat、Redis、MySQL、windows远程桌面等。拆分了三个项目:1、cc-common项目:存放了消息格式和消息编解码器2、cc-server项目:内网穿透服务端项目3、cc-client项目:内网穿透客户端项目内网穿透的实现过程主要分三步1、启动服务端,这时服务端监听了两个端口(16001,16002,可根据启动参数修改),一个用来接收客户端请求(16001端口),一个用来接收访客代理(16002端口)2、启动客户端,客
原创
发布博客 2022.12.05 ·
6338 阅读 ·
12 点赞 ·
12 评论 ·
53 收藏

Java Annotation AbstractProcessor,通过AST修改class文件,修改方法定时任务注解,编译期解耦第三方组件

自定义一个定时器注解,我把spring的Scheduled注解作为自定义注解的结构体,方便我们编译时替换。@Retention(RetentionPolicy.SOURCE)// 编译期注解}
原创
发布博客 2022.09.24 ·
1549 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Springboot、maven 打包瘦身,去除依赖的jar【springboot外置jar、配置文件】

分布式项目、微服务项目一般都会引用许多公共依赖,每次maven打出来的jar包上百M,不利于运维工作、可以在打包时隔离项目本身的jar和依赖的公用jar包,这样项目本身包可以做到很精简。本文主要把项目依赖的包和项目的配置文件在打包时导出到本身springboot 的jar包 外。本文项目中导入依赖用到了两种方式,一是直接通过maven库,二是通过导入本地第三方jar。
原创
发布博客 2022.09.16 ·
4843 阅读 ·
1 点赞 ·
0 评论 ·
13 收藏

Spring项目集成Sentinel,自定义BlockException异常返回值

springmvc项目中集成sentinel,通过sentinel提供的控制台配置限流、熔断等规则,项目实现UrlBlockHandler,实现在catch到blockexception时进行自定义返回值处理sentinel的官网文档非常详细的介绍了如何下载部署控制台、以及如何接入各类型的项目框架,本文以mvc项目为例,集成sentinel。启动控制台。
原创
发布博客 2022.09.02 ·
1657 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Springboot、Tomcat启动加载外部指定文件夹下的jar文件

把项目中的公共jar包提取出来,放到自定义lib库文件夹中,方便统一分布式项目中依赖的jar版本,springboot是jar方式启动,Tomcat是直接start启动,加载外部jar的方式不同,下面分别介绍两种配置。
原创
发布博客 2022.09.01 ·
2973 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

Java ServiceLoader、Spring SpringFactoriesLoader、SPI方式解耦第三方组件

项目框架中引入了各种第三方组件,比如nacos、seata、mq、Redis、MySQL等等,这些三方组件一般都具有可替代性,如果把这些组件拿来直接使用会对原框架有一定侵入性,后期可能造成框架升级、运维等多方面的问题。使用SPI可以有效解耦三方组件,降低组件变更对原框架的影响,SPI需要原项目框架把可能用到的三方组件的功能抽象出接口,然后不同的组件按照SPI规范提供对应实现,完成对原项目框架的升级拓展。......
原创
发布博客 2022.08.31 ·
537 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

Springboot、Tomcat+skywalking 链路追踪、日志收集配置

skywalking适合分布式项目,零侵入源码,集成链路追踪,实现过程主要是在项目启动时使用java代理,把项目集成到skywalking中。
原创
发布博客 2022.08.24 ·
2501 阅读 ·
0 点赞 ·
0 评论 ·
5 收藏

Springcloud gateway + nacos灰度路由、非cloud项目通过Httpclient+nacos自定义lb灰度服务请求【设计实践】

nacos中服务的元数据存储灰度信息,HTTP调用微服务接口时header头中添加灰度参数,两个灰度信息进行匹配,匹配成功说明这次请求可以走当前服务实例,通过透传header头信息实现整个链路的灰度路由。将各个微服务项目注册到nacos中,在nacos服务列表中可以对服务实例配置元数据信息,比如我们规定灰度服务的元数据信息需要配置一个JSON字符串格式的内容。gray是自定义灰度元数据的名称,值为json字符串,里面的信息可以自定义,目的是和请求头中的灰度参数匹配。...
原创
发布博客 2022.08.10 ·
1951 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

Springcloud gateway网关+认证服务+token方式,入口层认证统一微服务鉴权【设计实践】

分布式项目的单点登录分为认证服务(单点登录服务端)和业务服务(单点登录客户端)两个角色,当访问业务服务时,认证服务客户端SDK校验一下是否有登录token,如果没有登录token,需要携带当前请求链接重定向到认证服务,认证通过后由认证服务重定向业务服务链接,实现单点登录。gateway实现单点登录客户端功能,一般如果前后端项目是分离的,如果请求中没有携带登录token,直接返回需要认证,前后端没有分离的项目,可以做页面重定向操作。本文主要讨论gateway的实现,认证服务需要自行实现。......
原创
发布博客 2022.08.04 ·
8500 阅读 ·
13 点赞 ·
2 评论 ·
58 收藏

Openresty+nginx图片服务器配置,添加http_image_filter_module模块

openresty本身没有默认集成image模块,需要手动编译openresty方式添加模块。openresty下载地址,如果之前机器上已经安装过openresty,那最好去官网下载一下相对应的openresty源码。
原创
发布博客 2022.07.31 ·
1299 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Springcloud、Springmvc+Nacos注册中心实现服务注册

不管是springcloud还是springmvc实现服务的自动注册,都是在项目启动完成bean初始化时,调用nacos服务的API,实现的自动注册。
原创
发布博客 2022.07.18 ·
1527 阅读 ·
1 点赞 ·
6 评论 ·
2 收藏
加载更多