笔记
文章平均质量分 86
夏至海
一晃10年过去了,我们已经不再年轻,但我们还是青年。拼搏吧。
展开
-
直播、视频会议、屏幕共享—RTC实时音视频各大平台如何选择
最近在做一个聊天项目,除了简单的图文交互,逐渐接触到了直播,音视频通话,音视频会议等功能。开源的直播和音视频会议有好多解决方案,但是了解得越多,发现音视频服务涉及到的技术越来越深,自己和团队有些hold不住,像什么服务端混流,转码,编解码,美颜,去噪,加速等。小团队就几苗人,即时开源方案搞起来,用户体验也不太好,后续遇到问题也不好解决。于是考虑商业解决方案,目前有实力做音视频服务的也都是一些传统互联网平台企业,比如腾讯云,阿里云,华为云等。最近被马斯克捧起的Clubhouse据说由一家国内企业背后做原创 2021-03-01 13:25:24 · 2178 阅读 · 0 评论 -
IT公司技术线晋升,答辩PPT如何准备?Don‘t be shy!
震精了!好消息是今年单位职级晋升有机会申报了。坏消息是,今年晋升还得进行答辩。作为本分干活的码农,往年有机会申报都得领导首肯了,才敢报。今年其实早就看到公司发的通知邮件了,我都没有在意。也许是基础工作做久了有种离不开“土地”的情结,我想大部分码农都会有类似的想法。人家领导都没说啥,你自己就申报,申报了给你打回来,说不定再骂你一通,自讨苦吃呢!但是如果你勤勤恳恳干了不少工作,有机会不争取,对得起自己对得起家人吗!所以,如果你觉得自己对得起你的这份工作,那就必须争取一番,被驳回也在所不惜。面子重要还.原创 2020-08-17 22:14:35 · 3979 阅读 · 1 评论 -
springboot+springcloud从1.x+Dalston升级到最新2.x+Hoxton
有了springboot从1.x升级到2.x的经验,以为springcloud也就是换个版本号的事,实际上还是经历了一些波折。spring官方不会保证SpringBoot和SpringCloud不同版本的兼容性。要升级,先看springboot与springcloud兼容版本,要不然各种幺蛾子。SpringCloud版本 SpringBoot版本 Hoxton 2.2.x 2.2.x Greenwich 2.1.x 2.1.x Finchley 2.0.x .原创 2020-07-23 17:23:55 · 397 阅读 · 0 评论 -
springboot1.x升级2.x,很丝滑
初识springboot时,她还年轻:1.5.2.RELEASE,后来项目一直基于该版本做迭代,现在已经过去2~3年了,趁她还没有太丰满,还能闹动,做一次架构升级吧。很庆幸spring社区一直很活跃,版本更新很快,而且对老版本支持也不错。项目使用的开源组件不少,最近fastjson等爆出不少漏洞,乘机也都升了。经过一番了解,选了一个不是太新的稳定版本:2.2.8.RELEASE。org.springframework.boot 1.5.2.RELEASE ..原创 2020-07-23 16:41:11 · 644 阅读 · 0 评论 -
从乌东德水电站深入程序日志的世界
超级技术二:降温神器 预埋温度计+喷雾机+冷却水管超级技术三:大坝“天眼”防止坝基山体渗水的1万多个灌浆孔超级技术四:护坡神器主动网 蜘蛛人的奉献超级水电站!世界最大绿色能源工程基地要来了!注意:超级电站设计人员在工程设计时,就考虑到了系统在未来会遇到的风险,然后主动设计预防措施,而这些预防措施都离不开传感器:温度计,湿度计,水位/震动感知等等。作为码农,我们在做系统设计时也会考虑到未来的风险,而我们的“传感器”来自日志监控系统。这也是一个健壮的系统离不开日志系统的原因。日志的作.原创 2020-07-11 20:02:10 · 255 阅读 · 0 评论 -
CAS认证与USER认证并存,和谐集成
我们一般系统只用一种用户认证方式,但是随着系统越来越多,尤其是内部系统需要一种互信机制,so cas袭来。所谓认证,就是过滤器filter+凭证realm。cas客户端认证流程图,看起来简单,实操起来没那么简单,还是用文字分步骤拆分出来更加清晰。常见问题:cas客户端登陆,循环重定向,导致浏览器挂掉realm 登陆凭证,可以有多个authFilter 认证过滤器,与url相关,可以配置某个url走不一样的认证过滤器关联某个realm,并设置了登陆页地址其中casFilter还配置了c.原创 2020-06-25 00:52:24 · 482 阅读 · 0 评论 -
POI读取/生成Excel大文件,有高人吗?
最近在搞一个通用文件处理服务器,需要处理excel文件,但是有的excel文件大小超过3M,读取文件时直接导致jvm异常:gc overhead limit exceeded。原来poi读取excel时有两种模式,我们常用的是第一种,通俗点就是空间换时间/时间换空间:1种直接将整个excel读入内存后再解析userModel1种边读取边解析,比较省内存event-userModel首先加大jvm内存参数针对excel大文件读取,采用第二种模式来处理可以有效避免常见内存异常,但是得加上文件.原创 2020-05-30 21:33:06 · 500 阅读 · 0 评论 -
pattern匹配和不匹配执行效率天差地别,JAVA的正则表达式慎用
需求:给定文件命名格式,给定目录,列出其下所有满足格式的文件。格式:YYYYMMDD_单号_USER_XXXX.xlsx为了做到通用性,计划用正则表达式去匹配。^2[0-9]{7}_(.*){1,}_USER_[0-9]{4}.(xls|xlsx)$目录下都满足条件还好,很快匹配上了。20200512_0011_USER_0001.xls20200512_0011_USER_0002.xls20200512_0011_USER_0003.xls但是运行一段...原创 2020-05-30 20:50:29 · 1530 阅读 · 0 评论 -
码农为啥选择离开?戳中软件公司要害
“法海”你不懂爱,码农眼泪掉下来!如今大多数企业的信息中心部门的职能还停留在业务支持的程度,是为企业的业务部门提供IT系统支持的组织。这也造成了这些企业的信息中心部门的员工,更多的是承担甲方项目经理的职能,很多事情本质上都是偏事务性的工作,也就是这样的工作并不会随着工作时间的长短而让人的能力得到持续性提升。这种以项目为导向的方式,使得信息中心的员工往往一个项目上线后,就会投入到下一个项目的工作中,对员工在业务或专业能力上很难得到持续的积累和沉淀,结果就是员工的积极性和创造力在逐渐被消磨,整个信息中心部原创 2020-05-30 19:24:41 · 238 阅读 · 0 评论 -
为啥“运营”越来越火?“后台”必须硬
易经:穷则变,变则通,通则久。中台建设这两年比较火,所谓中台,共享中心更易理解,的建设必然要求技术团队组织架构的变革。传统的项目制大兵团作战,逐渐转变为以小团队特种部队探路,引导后端强大火力持续输出攻击。阿里在构建了共享服务体系后,对于各技术团队组织架构也做了调整。每一个微服务中心的建设,会有不同角色的人(架构师,开发人员,ued工程师等)组成的一个新组织,每个这样的组织都针对某一个服务中心提供持续的服务能力开发和运维,更准确的说是基于这一服务中心的业务能力进行“运营”。每个小团队围绕服务能力持续运营原创 2020-05-29 01:13:38 · 360 阅读 · 0 评论 -
简直了!10年难得一见的Tuxedo服务异常
`tuxedo服务在电信金融系统中广泛存在,但在马爸爸互联网飓风的席娟之下,曾经的辉煌已然不在。但作为重量级遗留资产,仍然在困扰着运维的同志们。莫名的异常,经常被搞得彻夜难眠!异常背景最近5G需求上线,版本更新了个cpp,就加了一行代码,收到告警:生产环境某个tuxedo service挂死。当然此cpp在测试环境运行良好。版本回退服务恢复正常。ulog报错日志:ERROR: Service TSVC not available in group GRP2原因核查起初摸不着头脑,后来找到异常请求在测试环境原创 2020-05-24 01:47:27 · 530 阅读 · 0 评论 -
「镜头回放」简直了!spring中清除redis缓存导致应用挂死
异常场景springWeb应用一直运行正常,同事最近反应,每次版本更新完毕,刷新缓存,就会导致应用挂死。只有重启redis应用才恢复正常。项目概况springWeb项目,常用配置表做了redis缓存,配置表中只有少量数据,多也就是1~2K条记录。用redission做分布式锁,与缓存用的同一个reids服务。分析过程由于系统之前一直稳定运行,只是最近才有问题,先从异常日志查起吧。通过查看tomcat日志,发现大量redis time out异常。起初怀疑是不是网络原因?但是原创 2020-05-23 22:37:16 · 218 阅读 · 0 评论 -
ORACLE中Clob字段在不同数据库间自由地飞翔,SQL+JSON字段解析
在不同的oracle数据库间复制一张包含clob字段的表,你会收到如下礼物:select cloba from tab_test@link_test;肿么办?1、to_charselect to_char(cloba) from tab_test@link_test;对于clob内容比较小的字段,to_char已经满足需求了。但是如果字段值较大,你又会收到另一种礼物:肿么办?2、empty_clob()----先插入一张中间表,用empty_clob()占位,.原创 2020-05-22 15:53:58 · 768 阅读 · 0 评论 -
梦里docker惊起
一直很好奇,docker集群里的服务之间是如何通讯的?如何对外提供服务的?容器重启后IP变化了如何感知?原来有一个服务发现机制通过ingress网络做到服务对外只需暴露端口即可,而不必关心容器重启之后ip地址的变化当然,对外访问时,负载均衡指向的是docker宿主机的ip和端口,而不是docker服务的IP和端口,这点的理解很重要!...原创 2020-05-12 19:55:09 · 119 阅读 · 0 评论 -
docker入坑步骤
docker入坑步骤:第一步:准备好姿势,安装docker第二部:玩转单机版,用docker cli管理容器与镜像第三步:docker私有仓搭建,包括secure和insecure模式第四步:docker-compose集中管理容器第五步:docker swarm集群管理第六步:k8s进阶...原创 2020-05-09 14:15:33 · 123 阅读 · 0 评论 -
程序猿共勉:小富即安真要不得
不忘初心,牢记使命。只争朝夕,不负韶华。上回说道我入职新公司就被外派半年,还是希望回到山西现场的。人说山西人恋家,也与抠,闭塞等词联系起来。我只是爱家乡的人,家乡的山水。回到项目现场还是老样子,与走之前没什么两样。我有条不紊的工作着,做完领导安排的开发维护工作就好。做好?没必要。工作完还能和同事一起打乒乓球,羽毛球,游泳。这是多么惬意的生活啊!但是周围却发生了好多大事,全省的煤矿要整合,开...原创 2020-05-07 23:42:21 · 280 阅读 · 0 评论 -
平时调试程序BUG,今夜调试望远镜观星
听天气预报说,今年五一天气不错。果然!回老家更是!空气好,晴空万里,晚上皓月当空,繁星点点。如此美好风光怎能浪费,也可以给娃普及普及科学知识,激起他的科学兴趣。借用她爷爷的天文望远镜,今夜开始观星。天文望远镜大致分为两部分,支架和镜筒。支架起旋转,支撑,稳定作用,镜筒包含粗调望远镜和微调望远镜。筒身底部有一面反射镜。民用级天文望远镜先把架好支架,镜筒大致对准月亮。接...原创 2020-05-01 23:34:24 · 200 阅读 · 0 评论 -
坚守2.5线城市的80后程序员——职场换道
2019年初一位老人说:“不忘初心,牢记使命。只争朝夕,不负韶华”听来令人震撼,一位老人竟然有如此斗志,而我呢。彼时我30有2。古人说三十而立。不免让我困惑,我都立下了什么?回首往事,我当初为啥就入了程序员这行?我还有使命?只争朝夕那是大学以前的事了。韶华有的是,我还年轻。你还年轻吗?2009年刚工作那会儿,学府街以南还是一片荒地,南中环两旁还有闲田几分。实习...原创 2020-04-30 00:06:19 · 195 阅读 · 0 评论 -
坚守2.5线城市的80后程序员——初入职场
2019年初一位老人说:“不忘初心,牢记使命。只争朝夕,不负韶华”听来令人震撼,一位老人竟然有如此斗志,而我呢。彼时我30有2。古人说三十而立。不免让我困惑,我都立下了什么?回首往事,我当初为啥就入了程序员这行?我还有使命?只争朝夕那是大学以前的事了。韶华有的是,我还年轻。你还年轻吗?80后的网吧充满了魔幻现实主义的色彩2008年北京奥运会这年我大学毕...原创 2020-04-29 00:13:29 · 647 阅读 · 0 评论 -
向SAAS迈进:我的springboot基础架构
每一项都值得深入了解。考虑要点:轻松向springcloud集成。面向CI/CD。协同开发。集成常用后台通用功能。项目做成模板化就更加方便了当然,各种工具必须上,包括jekins,gitlab,最需要的是docker。对于小型团队来说,k8s可以慢慢来,先熟悉了docker,玩起来。上了docker或者微服务,肯定会在存储管理,安全管理,日志管理,服务管理,网络管理等方面带来很多...原创 2020-04-25 20:40:53 · 522 阅读 · 0 评论 -
程序员的而立之年疾病袭来
两年以来,越发觉得自己易感冒了。五年以来,和同事的聊天内容,从小孩逐渐扩展到了疾病。十年以来,越发觉得年轻开始远离自己了,你还年轻吗?两年前的盛夏,突然的感冒,后来竟然发展成了鼻炎。此前,从不知道鼻炎为何物!现在,它常伴我左右,尤其是春天与秋天。本以为就是个小感冒,没想到后来发展成咳嗽,整夜整夜的咳嗽。尝试各种药物,从中药到西药,从喷剂到海盐洗剂,无一管用。一度以为自己不是得了绝症吧?你知道...原创 2020-04-13 09:20:30 · 248 阅读 · 0 评论 -
网络爬虫,解放你被电脑禁锢的双手
提起网络爬虫,首先会想到的是搜索引擎每天自动在互联网世界中到处游弋,抓取最新的网络资源,供网民们消费。这种复杂的系统可能理解起来有点费劲。 随着信息化深入生产生活的方方面面,给人们带来效率便捷的同时,也有种被机器左右的感觉。但这不是机器的原因,而是系统的设计者太依赖于机器,过犹不及了。也有另外一种解释,机器还不够智能。因此,就有一些原来手工的工作被搬到了电脑上,每天或者隔断时间需要...原创 2020-04-11 00:21:43 · 253 阅读 · 0 评论 -
服务器CPU超100%,Tomcat不响应,前台页面打不开----记一次生产故障综合诊断
这段时间,又有个应用隔几天就挂死,昨天直接一天死两次,我也是无语了。转过头来想,也说明使用系统的人越来越多了。为了客户,下定决心,必须解决这个顽疾。拿出我之前备好的利器,开始收拾它。提取故障日志tomcat运行日志已经好几天没清理,一瞅好几个G。服务器上vi,半天打不开。不怕不怕,上日志查找神器。这样就从大文件中提取到我们关心的内容了,我是提取了故障前后一段时间的日志。d...原创 2020-04-10 13:29:40 · 168 阅读 · 0 评论 -
程序员你真的做好了吗?
代码是否逻辑清晰?是否很健壮?运行是否稳定?是否方便运维?API是否能开放给其他人?API是否服务化,标准化?服务是否方便易用?服务是否形成了通用的业务能力?业务能力是否良好管控?是否引入外围参与者?是否形成了某个行业的生态?是否结合了国家的需要?是否引领了时代潮流?是否推动了时代进步?...原创 2020-03-31 21:53:59 · 77 阅读 · 0 评论 -
Thumbnails把图片压缩到200K以内,防止app崩溃
使用Thumbnails工具类能帮助我们对图片进行很好的处理,Thumbnails对图片的操作进行了很好的封装,往往很复杂的步骤用一行代码就完成了。//一般针对文件处理,把一个源文件处理后输出到另一个文件Thumbnails.of("aaa.jpg") .size(400, 800) .outputFormat("png") .t...原创 2020-03-27 10:51:35 · 1021 阅读 · 0 评论