- 博客(53)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 利用java socket和sampled实现点对点即时语音通信
### 利用java socket实现即时语音通信基本思路 利用javax.sound.sampled 包中的方法可以很方便的实现,获取拾音器音频输入的内容,和写入音频输出的混频器中。结合socket可以实现点对点语音通话。
2017-09-02 23:23:35
11655
10
原创 实现一个阿里云oss图片处理库
概述在web开发中我们页面需要对图片做各种处理,如图片缩放自定义裁剪质量变换格式转换等。而且长期以来,加载速度一直是优化网站最重要的因素之一,访问者和搜索引擎都将调用页面所需的时间作为重要的评价标准。精简的代码或使用缓存机制是解决网站快速加载方案的一部分,而网页中展示的图片大小也影响着加载速度。因此我们不能仅仅通过前端处理,而是在返回图片的时间就要减少大小。如果是国内用户使用阿里云oss,里面的图片处理使用起来就很方便。但是你如果使用s3或自己搭建得文件服务系统的话,你就得自己实现了。
2024-08-23 20:58:12
856
原创 wordpress站群搭建6外部库的引入和测试
引入公共库,工具类时,我们可以对其进行测试。测试使用testing,通过测试我们可以快速验证工具能力。测试做的完善可以大大减少我们bug量。
2024-08-16 19:52:17
397
原创 wordpress站群搭建5api和rpc业务代码编写
上面就是一个分布式接口的一般开发流程。基于go-zore我们的业务代码写在logic包中,一般来说只需要关注logic和model。当然这里的model可以使用orm框架进行替代,如gorm,ent。可以根据自己的需要进行替换。如果是单体项目那就没有rpc这个环节,api直接和model交互。具体完整的api代码可以查看源码。
2024-08-09 09:34:52
807
原创 普通spring项目配置加密
1.通过 environment 实现 这种方式代码复杂,但是相当灵活,可以实现多种业场景jasypt-spring-boot就是用这种方式,也是官方推荐的方式。2.改变mergeProperties 加载的propertes 3.创建自定义的 ConfigurablePropertyResolver,目的就是改变对象里面的 props这两种反式代码比较简单,但是可操作性就很弱了,基本只能进行Properties值得调整。但是简单,业务简单场景用这两种反式还是比较方便。
2024-01-30 10:58:38
1001
原创 以图搜图服务快速搭建
以图搜图就可以很好的帮助解决这个问题,通过 Towhee(resnet50 模型) + Milvus 如何实现本地环境搭建以图搜图。
2023-03-03 11:32:26
1408
原创 PLG(Promtail + Loki + Grafana)日志系统生产快速实践
Promtail: 日志收集的代理,安装部署在需要收集和分析日志的服务器,promtail会将日志发给Loki服务。Loki: 主服务器,负责存储日志和处理查询。Grafana:提供web管理界面,数据展示功能。PLG 官方文档很丰富,大家可以在网络上找到丰富的资料。
2023-02-09 11:18:09
3409
4
原创 Spring Cloud 全链路日志traceId
随着业务量的增加,线上出现越来越多的bug,但是由于使用的是Spring Cloud,微服务之间调用,输出的日志没有固定上下文管理,定位具体问题存在诸多不便,因此相当有必要引入全链路日志traceId。MDC(Mapped Diagnostic Context,映射调试上下文)是 log4j 、logback及log4j2 提供的一种方便在多线程条件下记录日志的功能。借助MDC可以非常方便的将traceId自动输出到日志中,无需手动拼写traceId,代码简单,风格统一。.........
2022-08-26 14:02:04
5868
原创 python自动更新程序
简介最近用python给开发了一个windows监控软件,用于监控电脑的运行情况,更新电脑软件。由于有几十电脑,一台一台手动更新就不太靠谱了,于是就开发了一个自动更新软件的的程序。1.基本思路[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传基本步骤如下1.获取远程配置文件2.对比本地配置文件3.获取更新文件4.进行更新2.代码实现使用到的库os 用于执行和停止程序urllib.request 用于获取运程文件base64 用于解析数据date
2021-08-20 17:07:56
3592
原创 Java motan网关设计
@TOC在这里插入代码片最近加入的一个it从零开始搭建的公司,rpc框架选型为motan。之所以用motan主要是由于公司分两个团队java和php,motan可以实现跨语言调用且比较轻量,所以选择了motan。由于后端项目之间使用rpc进行通讯,没有mvc层。对接前端需要提供http接口给到前端,因此需要有个motan网关来完成对接前端的任务。实现思路翻阅了下资料https://github.com/weibocom/motan/issues/581实现motan网关有两种方式1.使用mo
2021-04-20 13:30:28
393
1
原创 应用启动后立马自动停了怎么处理
在开发中我们经常会遇到测试或生产环境代码启动不了的情况。遇到这总情况大致可以用以下三步处理方式:1.首先看有没有日志输出查看应用输入的log日志,如果有对应log的日志可以对症下药。2.查看控制台日志如果没有log日志,说明应该可能还没有完全启动完成,这时候不一定有日志输出。那么就需要查看控制台日志了。一般我们会运行一个启动脚本,这个时候修改一些启动参数后即可看到控制台输出。一般来说生产/测试的运行信息不会输出控制台,需要修改脚本才可看到输出到控制台的信息。简单介绍下 >>/
2021-04-02 15:54:55
1140
5
原创 clickhouse 条件语句内decimal除0报错处理
clickhouse decimal类型除0异常最近使用clickhouse做一个报表页面出现一个问题。SELECT sum( impressions) impressions, sum( clicks ) clicks, if(impressions>0,clicks/impressions,0) clickRate, sum( cost ) cost, if(clicks>0, cost/clicks,0) clickCostFROM a
2021-03-03 17:38:25
3944
1
原创 解析文件入库乱码问题解决
解析文件乱码入库乱码在解析文件和入库中我们会遇到很多乱码问题。最近做了个拉取亚马逊广告的报表的需求,出现了一个乱码问题。且这个问题在本地运行没有问题而在测试环境确出现了,中文全部变成???。网上找了几个答案,1.数据库编码设置错误,需将数据库表或字段编码设置为utf82.由于我这个是使用mybatis,需要在数据url连接后面加上?useUnicode=true&characterEncoding=UTF-8第一种:数据库编码设置错误我的数据由于使用的是clickhouse,cli
2021-02-27 17:49:18
2121
原创 motan rpc 接口统一异常处理
1.hello word 一个Motan扩展大概需要下面的三点:实现SPI扩展点接口package com.weibo.api.motan.filter;@Spipublic interface Filter { Response filter(Caller<?> caller, Request request);}业务代码实现Filterpublic class PlsProviderExceptionFilter implements Filter {
2021-02-22 21:07:45
864
原创 JMX获取jvm参数,cpu使用率,内存,线程,类等信息,实现一个简单的web版jvisualvm
JMX即Java Management Extensions(Java管理扩展),是Java SE的一部分,在Java2的时候加入到Java SE平台中,但Java5才正式发布。JMX提供了一个非常简单的途径去管理应用程序的资源,这里的所说的资源包括内存资源,磁盘资源等,而且因为JMX相关技术是动态的,所以可以在应用程序运行时监控和管理资源。本文介绍了JMX获取jvm参数,cpu利用率,内存,线程,类等信息,实现一个简陋的web版jvisualvm
2020-07-17 16:51:04
6045
2
原创 自定义一个Chrome翻译插件
做为一名程序员,难免要和各种英文文档打交道。然而大部分程序员的英文水平,只能用一个字来形容,那就是烂。我深知自己英语水平低下,需要一款翻译插件来治疗一下。网上的翻译插件有很多,但是这里是自己来定制一款属于自己的chrome翻译插件。1.了解chrome插件开发不了解的同学可以先看看下面的资料Chrome插件官方文档主页【干货】Chrome插件(扩展)开发全攻略2.插件的结构当你了解了chrome基本开发了,下面就这就直接撸代码了。插件的目录结构[外链图片转存失败,源站可能有防盗链机制,建议将图
2020-06-30 17:21:02
1800
原创 windows自带的网络调试工具整理
现如今的生活,网络已经无处不在。在工作中我们会也会遇到形形色色的网络问题,掌握一些工具定位并解决这些问题就显得很有必要了。下面就介绍几款windows下的网络调试工具(命令)1. ipconfig2.ping3.nslookup 域名解析4.TRACERT 跟踪路由5.tcping
2020-06-02 21:10:29
4915
原创 整合vue开发H5+跨平台app (以开发语音识别为例)
HBuilder快速搭建H5+应用上一次尝试了下H5+开发了跨平台app,可以发现的事利用H5+开发app的话,其实就是利用h5将页面给做出来,然后借助H5+的sdk和原生系统做交互,而我们开发人员只需要关系具体的页面功能开发既可。然而使用传统的H5 Html的方式显然生产力已经跟不上了,于是这次就尝试着使用VUE。基本思路如下。1.利用vue开发app的页面2.然后将页面构建打不后移...
2020-04-12 16:27:03
4223
原创 mysql单个字段查询时设置是否区分大小写
在mysql各种查询面前,主要讨论在查询单个字段时如何做到使查询sql 做到区分大小写和不区分大小写。主要利用到mysql 字符校对规则 COLLATE,通过指定不同的校验规则即可做字段是否区分大小写
2020-03-23 14:51:34
1034
原创 bat脚本交互动态输入端口启动jar包
bat脚本交互动态输入端口启动jar包简单说明下几个语句下面就是运行的脚本生成bat运行工作中经常要打包项目,启动jar包进行本地测试,由于端口老是会被占用,所以将启动脚本设置可以动态设置端口就有必要了。一下就是动态设置的启动脚本简单说明下几个语句@echo off 执行"echo off",后面所执行的命令不会显示出来,只会显示结果@echo on 就是与上面相反rem 注释命令 并...
2019-12-26 10:25:58
1205
原创 Charles对浏览器上https的请求拦截
对网页上https请求拦截1.安装https证书help -> SSL Proxying -> Install Charles Root Certificate点击安装证书选择受信任的根证书颁发机构,然后下一步,完成,点击确认即可导入证书。2.对https请求进行授权菜单选择Proxing->Windows Proxying开启请求代理对同一域名下的请求...
2019-02-19 18:28:22
5656
2
原创 js监听窗口变化动态改变div大小
js监听窗口变化动态改变div大小 function getHeight(val) { this.processHeight=(window.innerHeight || document.documentElement.clientHeigh)-210 +'px'; } getHeight(1); //通过注册resize监听器,实现对窗口大小的监听 ...
2018-12-06 13:50:18
6976
原创 nginx配置详解
nginx配置#运行用户user nobody;#启动进程,通常设置成和cpu的数量相等worker_processes 1;#全局错误日志及PID文件#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;#pid logs/ng...
2018-10-19 10:12:18
297
原创 高仿element-ui自定义上角标弹出框
最近要写个弹框,发现element-ui弹框样式还可以,就copy下来改吧改吧。html代码<!--弹框--> <div class="el-dropdown-menu el-popper" :style="'position: absolute; top:'+listDialogTop+'; left: '+listDialogLeft+'; transform-orig...
2018-10-14 16:40:00
3917
原创 postMan5.0.2及postMan Interceptor chrome插件离线安装,(实现登录认证)
postMan5.0.2及postMan Interceptor离线安装,(实现登录认证)这是一种直接通过打包已经安装的扩展程序的方式,进行离线安装首先下载postMan及postMan Interceptor,解压缩到你喜欢的位置。https://download.csdn.net/download/andco/10681133下载地址打开 Chrome 浏览器的「扩...
2018-09-21 15:27:41
1430
转载 flash利用crossdomain.xml跨域传输数据
使用crossdomain.xml让Flash可以跨域传输数据本文来自http://www.mzwu.com/article.asp?id=975 本文来自https://www.cnblogs.com/jiuyi/p/6068190.html一、概述位于www.mzwu.com域中的SWF文件要访问www.163.com的文件时,SWF首先会检查163服务器目录下是否有crossd...
2018-09-06 10:44:54
1487
原创 HBuilder快速搭建H5+应用
一、环境搭建1.安装HBuilderHBuilder是DCloud(数字天堂)推出的一款支持HTML5的Web开发IDE。 [1] HBuilder的编写用到了Java、C、Web和Ruby。HBuilder本身主体是由Java编写。它基于Eclipse,所以顺其自然地兼容了Eclipse的插件。利用HBuilder可以快速的搭建与H5+应用和原生APP进行交互从官网下载...
2018-07-24 17:26:30
19624
1
转载 解决Unknown host 'jcenter.bintray.com'问题
转自 解决Unknown host ‘jcenter.bintray.com’问题 1、如图报错2、原因:build.gradle中jcenter()或maven()被墙了。3、解决:方法一:使用开源中国的maven库:阿里云的:http://maven.aliyun.com/nexus/content/groups/public/在项目根目录下的build.grad...
2018-07-04 16:40:04
19894
3
转载 转 com.android.tools.build:gradle:X.XX.XX:gradle.jar 插件无法下载问题
转自 com.android.tools.build:gradle:X.XX.XX:gradle.jar 插件无法下载问题 在使用Android Studio 这个IDE时,出现com.android.tools.build:gradle:X.XX.XX:gradle.jar 插件无法下载问题可能的原因就是网速不好或者依赖仓库的下载网址被墙了,可以配置代理试试。比如,android stu...
2018-07-04 16:37:12
968
转载 转 cordova插件汇总大全
转自 cordova插件汇总大全 1、获取当前应用的版本号cordova plugin add cordova-plugin-app-version2、获取网络连接信息cordova plugin add cordova-plugin-network-information3、获取GPS数据cordova plugin add cordova-plugin-geolocati...
2018-07-03 10:33:41
604
转载 转 Android SDK Manager国内无法更新的解决方案(亲测有效)
转自 Android SDK Manager国内无法更新的解决方案(亲测有效) 现在由于GWF,google基本和咱们说咱见了,就给现在在做Android 或者想学习Android 的朋友带来了诸多的不便,最简单的就是Android SDK Manager 你无法更新了。现在这里有一个解决方案,如下。1.启动 Android SDK Manager ,打开主界面,依次选择「Tools」...
2018-07-03 08:41:44
1148
原创 前端工程师需要了解的知识点
vue 与 vue-resource 跨域问题解决方法一:在vue项目下的 config/index.js 文件里面配置代理proxyTable:var path = require('path')module.exports = { build: { env: require('./prod.env'), index: path.resolve(__d...
2018-06-30 14:37:54
3322
原创 linux下构建javaWeb环境,安装java JDK、Tomcat、Mysql、Redis笔记
一,在Linux上安装jdk1.rpm软件包管理器1.1概述 一种用于互联网下载包的打包及安装工具,它包含在某些Linux(CentOs)分发版中。1.2命令 rpm -qa : 查询所有安装过的软件包 rpm -e --nodeps 删除的软件包名: 删除指定的安装包 rpm -ivh 包名 :安装rpm包2.安装JDK步骤下载jdk 从windows上传到linux 在CRT下,...
2018-05-26 12:29:33
434
原创 http请求头、请求状态码、http响应头详解
1.http请求头HTTP客户程序(例如浏览器),向服务器发送请求的时候必须指明请求类型(一般是GET或者POST)。如有必要,客户程序还可以选择发送其他的请求头。Accept:浏览器可接受的MIME类型。Accept-Charset:浏览器可接受的字符集。Accept-Encoding:浏览器能够进行解码的数据编码方式,比如gzip。Servlet能够向支持gzip的浏览器返回经gzip编码的H...
2018-05-21 14:00:51
1946
原创 Vue2.0图片上传及图片压缩自定义H5图片上传组件
最近公司要求图片上传需要压缩,以前直接使用组件不能满足使用了,于是决定自定义个图片上传组件。可以实现动态传入url,设置压缩率,接收回传参数。 压缩也质量还不错。先上效果图效果如下压缩质量还不错,4.37M到550k 压缩率更是达到了87% ,这省了不少流量和服务器硬盘啊,哈哈 1.组件html定义了图片上传增加按钮,将原有的input标签样式进行了更改,图片显示也进行样式更改,利用vue2.0的...
2018-05-20 19:26:27
4895
1
Charles抓包转发工具
2019-02-19
Activiti课程笔记从入门到实践.doc
2018-01-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人