- 博客(316)
- 资源 (4)
- 收藏
- 关注
转载 目前为止最透彻的的Netty高性能原理和框架架构解析
1、引言Netty 是一个广受欢迎的异步事件驱动的Java开源网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。本文基于 Netty 4.1 展开介绍相关理论模型,使用场景,基本组件、整体架构,知其然且知其所以然,希望给大家在实际开发实践、学习开源项目方面提供参考。2、JDK 原生 NIO 程序的问题JDK 原生也有一套网络应用程序 API,但是存在一系列问题,...
2020-04-27 13:02:25
676
转载 MySQL高可用集群之基于MyCat部署HaProxy实现高可用
基于MyCat部署HaProxy实现高可用在实际项目中, Mycat 服务也需要考虑高可用性,如果 Mycat 所在服务器出现宕机,或 Mycat 服务故障,需要有备机提供服务,需要考虑 Mycat 集群。一、高可用方案可以使用 HAProxy+Keepalived配合两台MyCat搭起MyCat集群,实现高可用性。 HAProxy实现了MyCat多节点的集群高可用和负载均衡,而 HA...
2020-04-24 17:56:06
801
转载 8000 字 + 21 张图,服务端高并发分布式架构 14 次演进之路
1. 概述本文以淘宝作为例子,介绍从一百个到千万级并发情况下服务端的架构的演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知,文章最后汇总了一些架构设计的原则。特别说明:本文以淘宝为例仅仅是为了便于说明演进过程可能遇到的问题,并非是淘宝真正的技术演进路径点击此处获取我的面试经历与资料哦~~~~2. 基本概念在介绍架构之前,为了避免部分读者对架构...
2020-04-22 16:49:13
734
转载 Python微信公众号开发平台
上大学的时候,对微信公众号开发浅尝辄止的玩了一下,感觉还是挺有意思的。//www.jb51.net/article/133677.htm后来服务器到期了,也就搁置了。由于发布web程序,使用PHP很顺手,就使用了PHP作为开发语言。但是其实微信公众号的开发和语言关联并不大,流程,原理上都是一致的。快要做毕设了,想着到时候应该会部署一些代码到服务器上,进行长期的系统构建。所以趁着还是学生,就...
2020-02-12 21:17:57
1539
转载 快速排序算法详解
快速排序(Quick Sort)是对冒泡排序的一种改进。由C. A. R. Hoare在1962年提出,其基本思想是选取一个记录作为枢轴,经过一趟排序,将整段序列分为两个部分,其中一部分的值都小于枢轴,另一部分都大于枢轴。然后继续对这两部分继续进行排序,从而使整个序列达到有序。1.基本思想:例如对于一个待排序的源数组arr = { 4,1,3,2,7,6,8}。我们可以随便选一个元...
2019-12-15 21:21:19
1305
转载 Linux下如何用nginx+ffmpeg搭建流媒体服务器
安装ffmpeg安装过程略安装完成后,检查是否安装成功。比如我这里采用向pili推流的方式,将本地的一个mp4视频推流到七牛pili。ffmpeg -re -i /tmp/ffmpeg_test.mp4 -vcodec copy -acodec copy -f flv "rtmp://pili-publish.qingkang.echohu.top/qingkang/stream1?...
2019-12-14 23:08:27
414
转载 通达信自动交易软件
1、要善用spy++2、不同的控件主要靠GetDlgCtrlID去区分3、要获得另一个进程的焦点窗口(GetFocus)需要调用AttachThreadInput4、尽量少用keybd_event模拟键盘输入,主要是该函数不能保证按键消息一定能被特定进程接收到。取而代之的是SendMessage(hwnd, WM_IME_CHAR, ...)。而模拟回车按下要用PostMessage ...
2019-12-11 08:47:38
9023
转载 简单的搭建一个高并发低时延系统
首先声明一点:这里的“高并发”是相对的,相对于硬件而言,而不是绝对的高并发。后者需要分布式来实现,这里不做讨论。本文关注的是单机的高并发。最近在做一个语音通信系统,要求在线用户2W,并发1K路通话。硬件是两台服务器,酷睿多核,4G内存,千兆网卡(我用过的最好的硬件,负担这些应该问题不大)。系统的另一个指标是呼叫时延和语音时延。这是这个系统的关键。最终我们的系统拿到用户现场测试的时候,效果可...
2019-12-02 09:34:10
785
转载 JS组件系列——JsPlumb制作流程图及相关效果详解
上 篇前言:之前项目里面用到了Web里面的拖拽流程图的技术JsPlumb,其实真不算难,不过项目里面用HTML做的一些类似flash的效果,感觉还不错,在此分享下。Jsplumb官网:https://jsplumbtoolkit.comGitHub:https://github.com/sporritt/jsplumb/一、效果图展示1、从左边拖动元素到中间区域,然后连...
2019-11-29 10:23:33
1597
2
转载 乌龟编程精讲版-61
万花尺,也叫繁花曲线规,是一种绘图玩具。相信许多人小时候都玩过!它由外图板及内圆图板两部分组成。内圆图板像一个齿轮,沿圆心不同半径的位置带有许多笔洞,外图板为一类似为内齿轮的大型圆孔,内圆板放在外图板的圆洞中,循着圆周转动,以铅笔或圆珠笔从笔洞可以画出像花朵一样规则图案。万花尺画图中万花尺配和不同半径的内圆图板,可以画出各种各样美妙的图案。回想起我们本系列教程前面给大家介绍的各色...
2019-11-24 23:52:27
3242
4
转载 Qnap威联通NAS数据丢失恢复方法
R-linux是一款可以在windows下运行的数据恢复软件,可以识别windows和linux的多种文件系统,Qnap威联通NAS如果不小心的数据删除,可以通过R-linux进行数据恢复。工具/原料R-linux 或R-studio方法/步骤 通过百度自行查找R-linux软件,并安装。 打开软件,自动加载机器所有的硬盘。 找到NAS所在的硬盘,...
2019-11-17 19:35:31
7379
2
转载 Zabbix监控系统入门
前言:一个初略自动化运维平台,应该实现以下3个层面自动化:1.操作系统层面自动化如果想要万台服务器共舞,没有操作系统这个舞台还怎么舞?1.1:物理环境:OS预备自动安装(Pxe/KickStart/Cobbler)1.2:云环境Iaas实现框架(OpenStack)2.应用软件层面自动化拥有操作系统之后万人登场,如何统一指挥(安装、配置、管理、更新)...
2019-11-15 14:10:11
587
转载 换新机器啦?威联通NAS数据迁移教程送给你
创作说明:在和一位玩NAS的朋友聊天的时候,她说她最近换了一个纯SSD的NAS TBS-453DX用来做工作室存储数据用,她之前的用NAS也是威联通,但是迁移数据的时候,传输速度只有5MB/s。我问,威联通不是有应用可以直接迁移数据,怎么会这么慢?她说,不知道啊~创作态度:出一个教程给大家参考,希望对大家有所帮助。创作正文:作者此次使用威联通的TS-453B与TS-453B...
2019-11-14 20:58:21
3002
转载 QNAP 威联通磁盘分区探索与数据导出
之前晒了一单Qnap的TS-231,并且讲了我的一些基本偏好设置。这篇文档打算介绍一下Qnap的磁盘分区情况以及在NAS突然挂掉的情况,如何使用移动硬盘盒来紧急导出内容。QNAP 威联通 TS-231 NAS存储 开箱及评测近些年家用NAS市场越来越火爆,选择也越来越多。相比于移动硬盘来说,NAS对于家庭中大容量的存储也更加实用,尤其是现在家里智能设备越来越多,智能电视的功能也越来越强,有一个...
2019-11-14 20:56:29
5524
转载 FreeSwitch下配置DID的方法(及各种配置)
配置DID的方法首先介绍下什么是DID? 翻译为中文为“直接向内拨号”,该服务是由电话公司提供的,它使用户能够直接拨打PBX或VOIP系统中的分机号码,而无需求助于总机或自动话务系统。现在要实现这样一个功能 - 通过手机或座机拨打一个号码(例如:01088888888),可以直接联系到VOIP系统(FreeSwitch系统)的1008这个用户。如下图所示:手机/座机 ---------...
2019-11-06 09:54:57
1073
转载 使用Opensips和FreeSwitch搭建万级别的高可用软交换架构
最近因为项目的原因,需要提供一个支持万级别以上,支持多应用的软交换服务端架构,对以前的架构做了一个调整,写一篇文章总结下。新的架构主要解决了一下几个问题:单套要支持1w左右并发的呼叫 完全的高可用,不能有单点故障 支持多种应用、如外呼、呼入、以及其它基于语音的通讯应用 支持多种录音方式,最少两种整个平台外部依赖的服务除了数据库主要就只有Opensips和FreeS...
2019-11-05 18:22:21
3574
2
转载 如何制作一个完美的(运动)操作系统
本操作系统属于外国大神自制的跳跃系统,本人只是翻译+一些个人的理解,如侵权那么我会删除此贴这是大神的教程链接,小学英文系数,差不多能看懂http://pan.baidu.com/s/1c1OALrE(转者注:连接已失效)首先看效果(没有踢墙跳)流畅的吓人而且。。。反正就是超级666小猫的素材也是大神画的如果你是新手,不要犹豫,戳进这个帖子首先,你要准备的是:1.一台装有sc...
2019-10-31 09:46:22
1588
转载 智能电话机器人--基于 UniMRCP 实现讯飞 ASR MRCP Server
通过实现 UniMRCP 的 plugin,我们可以封装讯飞、百度、阿里等厂家的 ASR 接口,实现我们自己的 MRCP 服务器。什是 MRCP媒体资源控制协议(Media Resource Control Protocol, MRCP)是一种通讯协议,用于媒体资源服务器向客户端提供各种语音服务,目前已定义的媒体资源服务有语音识别(Speech Recognition)、语音合成(Sp...
2019-10-27 10:31:21
1231
转载 freeswitch mrcp 源码分析--数据包的发送
在MRCP 开始语音识别后会调用recog_channel_start()函数static switch_status_t recog_channel_start(speech_channel_t *schannel){ switch_status_t status = SWITCH_STATUS_SUCCESS; switch_hash_index_t *egk; ...
2019-10-27 10:15:34
767
转载 freeswitch mrcp 源码分析--数据解析
/** Parse message by raising corresponding event handlers */APT_DECLARE(apt_message_status_e) apt_message_parser_run(apt_message_parser_t *parser, apt_text_stream_t *stream, void **message){ co...
2019-10-27 10:10:35
443
转载 freeswitch mrcp 源码分析--event事件产生
event事件的构建主要在speech_thread()函数里面。static void *SWITCH_THREAD_FUNC speech_thread(switch_thread_t *thread, void *obj){ struct speech_thread_handle *sth = (struct speech_thread_handle *) obj; s...
2019-10-27 10:03:12
523
转载 freeswitch mrcp 源码分析--数据接收(下)
在前两篇我们介绍了mrcp接收后的处理,最后会调用apr_queue_push扔到消息队列里面。对应的,在apt_consumer_task.apt_consumer_task_run()中会循环调用pr_queue.apr_queue_pop()从队列里面取出数据:apt_consumer_task.apt_consumer_task_run –>apr_queue.apr...
2019-10-27 09:58:43
735
1
转载 freeswitch mrcp 源码分析--数据接收(上)
apt_poller_tas.apt_poller_task_run–> mrcp_client_connection.mrcp_client_poller_signal_process–>sendrecv.apr_socket_recv –>mrcp_stream.mrcp_parser_run –>mrcp_client_connection.mrcp_...
2019-10-27 09:53:50
468
1
转载 构建简单的智能客服系统(三)——基于 UniMRCP 实现讯飞 TTS MRCP Server
上一篇我们封装了科大讯飞接口实现了 UniMRCP ASR Plugin,这篇文章我们再简单说一下 TTS 的实现。MRCP plugin以下内容请参考《基于 UniMRCP 实现讯飞 ASR MRCP Server》:UniMRCP 的编译、安装运行 UniMRCP plugin 的加载、调用流程 UniMRCP plugin 的新建 讯飞 SDK 的导入调用讯飞 AP...
2019-10-25 13:30:31
1388
转载 构建简单的智能客服系统(二)——基于 UniMRCP 实现讯飞 ASR MRCP Server
通过实现 UniMRCP 的 plugin,我们可以封装讯飞、百度、阿里等厂家的 ASR 接口,实现我们自己的 MRCP 服务器。什是 MRCP媒体资源控制协议(Media Resource Control Protocol, MRCP)是一种通讯协议,用于媒体资源服务器向客户端提供各种语音服务,目前已定义的媒体资源服务有语音识别(Speech Recognition)、语音合成(S...
2019-10-25 13:28:26
2277
转载 构建简单的智能客服系统(一)——FreeSWITCH 搭建与配置
最近部署了几台第三方的智能语音系统,提供了如 ARS、TTS 相关服务。而 MRCP 能够对不同厂商提供的接口进行统一的封装,对于上游 FreeSWITCH 服务器只需要关心需要什么服务,而不需要再针对不同厂商进行相应接口开发。智能客服系统简介FreeSWITCH 是一个电话的软交换解决方案,包括一个软电话和软交换机用以提供语音和聊天的产品驱动。FreeSWITCH 可以用作交换机引擎...
2019-10-25 13:25:26
4435
1
转载 用canvas绘制的osworkflow流程显示
这个是一个兼容osworkflow流程设计器设计出来的.xml和.lyt文件的显示流程图的js使用了jquery和excanvas.js兼容IE、Fiefox、Chrome、Opera浏览器支持鼠标事件解压src.zip后,打开demo.html点击生成流程图就可以观看演示效果Java代码(function(){ /** ...
2019-10-21 19:24:17
409
转载 HTML5 JS 画图板
最近在研究下 html5 的 canvas 想写个小项目,练练手,结果写了一个画图板,功能点有 绘制、直线、圆、方形、涂鸦、线条粗细、颜色切换、撤销、回退、保存、下载、外部图片拖入等 , 用的技术是包含 html5 中的本地存储、下载、canvas 等技术,上图。演示地址:http://chengxinwei.github.io/html5/2013/06/20/HTML5_C...
2019-10-21 19:19:32
643
转载 如何在 FlashDevelop 里二次开发 Scratch
你还在为 Flash Builder 的破解验证而烦恼吗?你还在为 Flash Builder 的超长加载而感到心烦吗?你还在为找不到 FlashDevelop 二次开发 Scratch 的教程而感到心累吗?一切都结束了!小萧经历千辛万苦终于集合了各位大佬的教程,成功的使用 FlashDevelop (以下简称FD)进行编译和 AIR 签名打包操作!那么既然炫耀了(划掉)成功了结果,那么...
2019-10-21 10:49:11
329
1
转载 scratch 开发自定义插件
自定义插件需要两步:登录ScratchX平台 加载自定义程序第一步相对固定,打开网站地址为:http://scratchx.org/#scratch,选择“Load Experimental Extension”按钮,在右上角或者“More Blocks”模块下,如图第二步是在弹窗中输入自己的脚本程序,程序语法按照Scratch的要求实现即可,包含三部分,其格式是固定的,框架如下:...
2019-10-21 10:36:41
2707
转载 语音识别——基于深度学习的中文语音识别系统框架
本文搭建一个完整的中文语音识别系统,包括声学模型和语言模型,能够将输入的音频信号识别为汉字。该系统实现了基于深度框架的语音识别中的声学模型和语言模型建模,其中声学模型包括CNN-CTC、GRU-CTC、CNN-RNN-CTC,语言模型包含transformer、CBHG。数据集采用了目前能找到的所有中文免费数据,包括:thchs-30、aishell、primewords、st-cmd四个数...
2019-10-19 11:33:50
1217
转载 推荐.Net、C# 逆向反编译四大工具利器
转自:https://blog.csdn.net/kongwei521/article/details/54927689在项目开发过程中,估计也有人和我遇到过同样的经历:运行环境出现了重大Bug亟需解决、或者由于电脑挂了、旧代码覆盖新代码,而在这种情况下,我们不能直接在当前的代码中修改这个Bug然后发布,这会导致更严重的问题,因为相当于版本回退了。还有电脑挂了代码整个都没有,这种情况下 我们只...
2019-10-13 09:53:53
347
原创 scratch绘图系列3-绘制阴阳太极图
前面我们介绍了用scratch绘制基本的图形,如点、直线、正多边形、圆及圆弧等,接下来我们将利用这些基本图形来绘制比较复杂的几何图形,今天主要介绍太极图的绘制方法。一、太极图结构分析如图所示,就是常见的太极图图形。我们分析其结构,先忽略掉2个小圆后,其实就是4个半圆组成,大圆是一个白的半圆和一个黑的半圆,接下来就是一个黑的半中圆(上面)和一个白的半中圆(下面的半个),最后是一个小的...
2019-09-24 20:34:29
5386
转载 这么讲音频算法,真是人人都能懂
这一章开始介绍一些算法相关的内容.前面有几章对播放强调较多,这期本来想写录音方面的内容.但是普通的麦克风电路主要是模拟电路,独立做一章来写觉得内容有点少,所以会在其他章节穿插介绍.至于MEMS麦克风,因为涉及到PDM解码,可以在后面做独立一章来写.点击链接加入群【嵌入式音频信号处理】:https://jq.qq.com/?_wv=1027&k=45wk8Ks嵌入式音频专用资料代...
2019-08-27 15:57:54
4452
转载 音频降噪算法 附完整C代码
降噪是音频图像算法中的必不可少的。目的肯定是让图片或语音 更加自然平滑,简而言之,美化。图像算法和音频算法都有其共通点。图像是偏向空间处理,例如图片中的某个区域。图像很多时候是以二维数据为主,矩形数据分布。音频更偏向时间处理,例如语音中的某段时长。音频一般是一维数据为主,单声道波长。处理方式也是差不多,要不单通道处理,然后合并,或者直接多通道处理。只是处理...
2019-08-27 15:44:05
1956
1
转载 音频自动增益 与 静音检测 算法 附完整C代码
前面分享过一个算法《音频增益响度分析 ReplayGain 附完整C代码示例》主要用于评估一定长度音频的音量强度,而分析之后,很多类似的需求,肯定是做音频增益,提高音量诸如此类做法。不过在项目实测的时候,其实真的很难定标准,到底在什么样的环境下,要增大音量,还是降低。在通讯行业一般的做法就是采用静音检测,一旦检测为静音或者噪音,则不做处理,反之通过一定的策略进行处理。这...
2019-08-27 15:40:36
1681
转载 FreeSWITCH1.6使用postgresql9.3.5作为数据库编译过程
转载自:http://freeswitch.net.cn/27.html在之前,我们转载了FreeSWITCH官网上有关postgresql的配置的问题,但是在细节上并没有描述,现在就如何在debian8.1上安装FreeSWITCH、Postgresql并使用Postgresql作为FreeSWITCH数据库做个简单介绍。第一步、安装PostgresqlCentOS 或debian ...
2019-07-17 16:29:27
541
转载 Ubuntu下freeSwitch安裝指导
转载自:https://www.jianshu.com/p/3400fdd29fb5本文档主要是指导从源代码安装FreeSWITCH。准备条件硬件· 32-bit OS (64-bit recommended) cpu Any· 512MB RAM (1GB recommended)· 50MB of Disk Space系统WINDOWS/LINUX本文采用U...
2019-07-17 15:30:22
1220
转载 Freeswitch ldns crash问题分析
转载自:https://www.jianshu.com/p/5a4e44fd8b8e先来看一个FS的coredump的堆栈信息。 你看到这个慌不慌?#0 0x00007f62d15af1f7 in raise () from /usr/lib64/libc.so.6#1 0x00007f62d15b08e8 in abort () from /usr/lib64/libc.so.6...
2019-07-17 15:27:38
880
转载 为什么Freeswitch总是有“盗打”电话?
转载自:https://www.jianshu.com/p/e5dc688a2f8f之前我一直不知道这种现象叫什么,直到有人称呼它“盗打”。那就管它叫“盗打”吧。“盗打”就像上图,从日志中可以发现有一些呼叫根本不是自己发起的,但是莫名其妙的就有的。其实也不能叫“盗打”,因为有些拨打根本没有意义,也没有打通。它们就像一个一个精灵一样,穿梭在FS中。当然,可能形式不止这一种。不过这所有...
2019-07-17 15:24:23
1603
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人