当前位置: 首页 > news >正文

2023年09月个人工作生活总结

本文为 2023 年 9 月工作生活总结。

研发编码

Alpine 容器

某工程部署于alpine镜像,当初看上是因为其体积小,其它微服务,在250MB左右,但那个工程只用50MB。最近发现时间戳转换不正确。对于同一时间字符串转时间戳函数,在centos镜像和alpine镜像,得到的结果不同,相差8小时,这导致系统功能出错,本来应该是0点生效的,结果需等待8时方生效。花了些时间排查,未果,为不影响上线时间点,于是改成centos镜像,问题解决。后面使用Go和C++整合测试,发现Go转换是没有问题。

GIS

关于地图的事,一直不理解切片和经纬度之间的联系,请教了同事,同事说是有个公式,能从经纬度转得到切片的X、Y值,于是在网络搜索了一番。找了个实例来验证。

先在高德地图找一个真实的经纬度:
https://www.amap.com/regeo?lng=111.015295&lat=22.891922

通过下面的代码,可以找到对应的真实切片,查询:
http://webrd02.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x=3311&y=1780&z=12

转换js代码(代码来自网络,缩放等级12):

// 结果:test: x = 3311 y = 1780// 经纬度转瓦片编号
function lon2tile(lon,zoom) { return (Math.floor((lon+180)/360*Math.pow(2,zoom))); 
}function lat2tile(lat,zoom)  { return (Math.floor((1-Math.log(Math.tan(lat*Math.PI/180) + 1/Math.cos(lat*Math.PI/180))/Math.PI)/2 *Math.pow(2,zoom))); 
}// 瓦片编号转经纬度function tile2long(x,z) {return (x/Math.pow(2,z)*360-180);}function tile2lat(y,z) {var n=Math.PI-2*Math.PI*y/Math.pow(2,z);return (180/Math.PI*Math.atan(0.5*(Math.exp(n)-Math.exp(-n))));}function main()
{var x = lon2tile(111.015295, 12);var y = lat2tile(22.891922, 12);console.log("tile test: x =", x, "y =", y);
}main()

工作记录

流水账

工控机国产化

这个月,同事重新安装Kylin嵌入式版本,比桌面版少了一些功能。重新理了系统脚本,让其更合理。比如数据库TiDB,原来是在应用层启动脚本中进行的,现在改成service方式,再在应用层脚本中通过有无该进程判断是否已正常,然后再启动其它依赖数据库的程序。

由于之前啃了不少骨头,现在遇到的坑基本不是很大。

本月做的事,一个是音频,要安装play命令,在Kylin技术沟通群里专家,隔了一天才回复询问是什么环境,在此之前通过一些外部英文网站找到解决方案,连接网络情况下,执行命令apt-get install -y sox libsox-fmt-all即可完成安装,播放几个wav音频正常,通过alsamixer命令调节音量,正常。就如此简单。

另一个是时间同步,在嵌入式版本上,手动执行date -s可看到预期结果,但再执行date即失败,断网后,问题修复。最终发现是设置界面里,日期时间配置项默认是自动同步的,改为手动同步,或设置不存在的NTP服务器,可达到手动改时间目的。

整理文档

趁磁盘被格式化之际,重新整理了残留下来的工作文档,再按类别分目录。比如:自己研发的内部工具,负责的工程代码,负责的事务,协助事务,问题排查,等。目前计划做一个类似mypkc的目录,所有的资料及文档均放于此,像分析日志及大型文件,如压缩后,还是较大,则抽取所需部分存放,其它不要。考虑便捷性,基于markdown管理。该目录会提交到远程仓库备份。

感悟

本来有个事务/项目一直是我跟着,上个月中旬开始至本月下旬,业主方那边没进一步消息(可能消息没到我这一level)。月底,领导询问另一同事关于此事的进度,原来业主方又提了些新的需求,这是之前专家评审会上没提过的,至于原因未明,经评估,改动的系统较多。从此事看来,自身能力还是不行,需想办法提升。

加班

中秋节下午,有同事在微信群里发一个和数据有关的问题,傍晚时分在家吃着饭,打电话给我,程序跑了近一个月没重启过,日志正常,查不出什么问题。当时没意识问题严重性,由于舟车劳顿,想早点睡,结果领导打电话问进展,再质问。接着副领导打电话问我有没有处理这个问题,接着联系值班同事查日志、重启,同时查代码改代码测代码打镜像导出包。从木星在东山出现,搞完一切再在微信汇报给领导时,土星已经快到西山了。

生活记录

换手机

原来的小米手机,经过一个多月与店家周旋,最终免费换了一个屏幕。基本每周去问一次,回复都是没有货。目前有2台正常可用的手机了,刚好分主备。像支付宝领红包之类的操作,可以用2个手机操作,方便很多。

回老家

在放假前2天,终于候补成功中秋节当天的火车票,于是退了次日的票,当天回,妹夫到车站接,赶上了家里的晚饭,大锤大妞能和表姐表弟一起碰杯喝饮料。在家享受几天不用洗碗煮饭的日子。

思想方面

育儿记录

上学

大锤正式上学了,但从不愿意分享在学校学的,问也不说,或者只是没对我讲而已。最近的关系差了很多,之前要求他每天写几个字,但没几天就不干了,骂了几句,晚上就不再跟我睡。而他妈妈,基本每天都灌输一些注意事项,讲的都是一些我觉得不太好的事,比如被老师罚站,被同学打。在教育过程中,我试图插话,反而引发大人级别的日常争吵 。现在还是动不动就出现上火、病毒、生病、打人这些话,我担心一直如此,小孩心理会有问题。

大锤刚开始上学时,他妈妈早上起来煮早餐,坚持一周多,就把这个任务移交给我了。买了箱牛奶,每天一瓶,至于吃的东西,粥、面、包子、饺子来回换着。菜品是有些单调,但好过每天到外面买包子吃。

观星

上个月至今,断续看了些三垣四象等天文资料和视频,也教大锤背北斗七星和二十八星宿名称,在手机和电脑下载了Stellarium软件,也带大锤看了若干次星星,就目前季节,在城市楼顶只能看到大角、织女、河鼓二、天津四这几个较亮的星星,但大锤更喜欢是拿着手机放大去看金星和土星。而大妞,因为某些原因,不给带着去楼顶。但在老家里,总算能带着他们到楼顶看星星了,只是月亮太亮,不合适在楼顶睡觉,做不到“卧看牵牛织女星”。今年,完成部分的带娃任务,去了科技馆,博物馆、图书馆,看了日落和星星。

业余研究

最近终于下了一些决心,把我的个人文章重新整理。最早的文章还是大学没毕业时写的,年代久远,历史遗留问题较多,只能按需整理,当前最大问题是分类不合理,同一个技术点,会被分到不同的目录里,回溯麻烦。或许年龄见长,要研究的技术方面太多。像数据库,接触了mysql、oracle、clickhouse、tidb,有的涉及到用docker部署,有的涉及修改源码或修改配置或写测试程序,所以要分到不同的目录。像nginx,涉及到docker部署,涉及高可用,一些事务也用到nginx做协助。诸如此类。

记账工具mnote

已完成了账单json的导入到sqlite3数据库功能,后续研究怎么写前端页面。前段时间,通过某些手段方法,获取到了我在那个APP的账本分类,账户信息以及从2010年至今的记账明细,虽然从网页上获取较麻烦,较花时间,但终究也能全部下载完。不过遇到一个严重问题,没有按账户记录的明细,本来可以通过记账明细推导,因历史原因,有部分账户在不同时期被手工重置金额且无法获取。目前能想到的办法是在APP中查询,手动记录,再导入数据库。

八月既望于二楼阳台,望月写。

相关文章:

2023年09月个人工作生活总结

本文为 2023 年 9 月工作生活总结。 研发编码 Alpine 容器 某工程部署于alpine镜像,当初看上是因为其体积小,其它微服务,在250MB左右,但那个工程只用50MB。最近发现时间戳转换不正确。对于同一时间字符串转时间戳函数&#xff0…...

现货白银图表分析的依据

现货白银的行情图表分析其实与股票的差不多,投资者可以结合均线、k线的变化,来分析实时的行情走势。当走势图的均线呈多头排列,即短期、中期、长期均线依次从上到下排列并向右上方运行,且白银价格沿各均线向右上方拉升&#xff0c…...

python多线程与多进程

多线程与多进程 一, 什么是进程, 什么是线程? ​ 进程: 运行中的程序. 每次我们执行一个程序, 咱们的操作系统对自动的为这个程序准备一些必要的资源(例如, 分配内存, 创建一个能够执行的线程. ) ​ 线程: 程序内, 可以直接被CPU调度的执行过程. 是操作系统能够进行运算调度…...

62从零开始学Java之时间相关的类都有哪些?

作者:孙玉昌,昵称【一一哥】,另外【壹壹哥】也是我哦 千锋教育高级教研员、CSDN博客专家、万粉博主、阿里云专家博主、掘金优质作者 前言 我们在开发时,除了数字、数学这样的常用API之外,还有日期时间类,更…...

2023年山东安全员c证考试题库及答案解析来了!

...

【Leetcode】买卖股票系列

121. 买卖股票的最佳时机 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。 返回你可以从这笔…...

SLAM面试笔记(8) — 计算机视觉面试题

目录 问题1:目标检测的算法分类 问题2:卷积神经网络的组成 问题3:输入层的作用 问题4:卷积层作用 问题5:卷积核类型 问题6:11卷积核作用 问题7:卷积核是否越大越好 问题8:棋…...

聊聊MySQL面试常问名词回表、索引覆盖,最左匹配

文章目录 1. 前言2. 回表操作 Index Lookup2.1 什么是回表2.2 回表的成本2.3 如何避免回表 3. 索引覆盖 Covering Index3.1 什么是索引覆盖3.2 索引覆盖的优点3.3 如何使用索引覆盖 4. 最左匹配原则(Leftmost Prefix Match)4.1 什么是最左匹配原则4.2 最…...

【面试】C/C++面试八股

C/C面试八股 编译过程的四个阶段C和C语言的区别简单介绍一下三大特性多态的实现原理虚函数的构成原理虚函数的调用原理虚表指针在什么地方进行初始化的?构造函数为什么不能是虚函数为什么建议将析构函数设为虚函数虚函数和纯虚函数的区别抽象类类对象的对象模型内存…...

学习记忆——数学篇——算术——无理数

谐音记忆法 2 \sqrt{2} 2 ​≈1.41421:意思意思而已;意思意思; 3 \sqrt{3} 3 ​≈1.7320:—起生鹅蛋;一起生儿; 5 \sqrt{5} 5 ​≈2.2360679:两鹅生六蛋(送)六妻舅;儿儿生&#xf…...

python协程和任务

协程概念引入 ​ 协程是我要重点去讲解的一个知识点. 它能够更加高效的利用CPU. ​ 其实, 我们能够高效的利用多线程来完成爬虫其实已经很6了. 但是, 从某种角度讲, 线程的执行效率真的就无敌了么? 我们真的充分的利用CPU资源了么? 非也~ 比如, 我们来看下面这个例子. 我们…...

visual studio code配置anaconda3的python虚拟环境

参考: Visual Studio Code配置anconda3虚拟环境 - 知乎...

【Unity3D编辑器开发】Unity3D编辑器开发基础性框架结构【全面总结】

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址我的个人博客 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 一、前言 嗨,大家好,我是恬静的小魔龙。 同学们…...

一座“城池”:泡泡玛特主题乐园背后,IP梦想照亮现实

“更适合中国宝宝体质”的主题乐园,被泡泡玛特造出来了。 9月26日,位于北京朝阳公园内的国内首个潮玩行业沉浸式 IP 主题乐园,也是泡泡玛特首个线下乐园——泡泡玛特城市乐园 POP LAND正式开园。 约4万平方米的空间中,泡泡玛特使…...

【什么是闭包? 闭包产生的原因? 闭包有哪些表现形式?】

JS闭包 什么是闭包?闭包产生的原因?闭包有哪些表现形式? 什么是闭包? 闭包是指一个函数可以访问并操作在其作用域之外的变量的能力。在 JavaScript 中,每当函数被创建时,就会创建一个闭包。 以下是一个简单的闭包示例&#xf…...

JackJson和FastJson

前言: fastjson是一款强大的json格式转换工具,我个人在开发中就非常喜欢用fastjson;但是由于某些原因,导致fastjson会有一些漏洞,因此在漏洞扫描后需要修复都是要求我们升级版本,或者替换为jackjson&#…...

SpringCloud学习一

单体应用存在的问题 随着业务的发展,开发变得越来越复杂。 修改、新增某个功能,需要对整个系统进行测试、重新部署。 一个模块出现问题,很可能导致整个系统崩溃。 多个开发团队同时对数据进行管理,容易产生安全漏洞。 各个模块…...

SpringBoot, EventListener事件监听的使用

1、背景 在开发工作中,会遇到一种场景,做完某一件事情以后,需要广播一些消息或者通知,告诉其他的模块进行一些事件处理,一般来说,可以一个一个发送请求去通知,但是有一种更好的方式,…...

课题学习(三)----倾角和方位角的动态测量方法(基于陀螺仪的测量系统)

一、内容介绍 该测量系统基于三轴加速度和三轴陀螺仪,安装在钻柱内部,随钻柱一起旋转,形成捷联惯性导航系统,安装如下图所示:   假设三轴加速度和陀螺仪的输出为: f b [ f x f y f z ] T f^b\begin{bmatrix}f_{x} …...

1876. 长度为三且各字符不同的子字符串

1876. 长度为三且各字符不同的子字符串 C代码&#xff1a;滑动窗口 // 存在三种字符&#xff0c;且不重复、子串数量 int countGoodSubstrings(char * s){int k 3;int hash[26] {0};int len 0;int l 0;int ans 0;for (int i 0; i < strlen(s); i) {hash[s[i] - a];if…...

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…...

大数据学习栈记——Neo4j的安装与使用

本文介绍图数据库Neofj的安装与使用&#xff0c;操作系统&#xff1a;Ubuntu24.04&#xff0c;Neofj版本&#xff1a;2025.04.0。 Apt安装 Neofj可以进行官网安装&#xff1a;Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...

Cursor实现用excel数据填充word模版的方法

cursor主页&#xff1a;https://www.cursor.com/ 任务目标&#xff1a;把excel格式的数据里的单元格&#xff0c;按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例&#xff0c;…...

vscode(仍待补充)

写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh&#xff1f; debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...

【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)

骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术&#xff0c;它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton)&#xff1a;由层级结构的骨头组成&#xff0c;类似于人体骨骼蒙皮 (Mesh Skinning)&#xff1a;将模型网格顶点绑定到骨骼上&#xff0c;使骨骼移动…...

根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:

根据万维钢精英日课6的内容&#xff0c;使用AI&#xff08;2025&#xff09;可以参考以下方法&#xff1a; 四个洞见 模型已经比人聪明&#xff1a;以ChatGPT o3为代表的AI非常强大&#xff0c;能运用高级理论解释道理、引用最新学术论文&#xff0c;生成对顶尖科学家都有用的…...

在WSL2的Ubuntu镜像中安装Docker

Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包&#xff1a; for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...

如何理解 IP 数据报中的 TTL?

目录 前言理解 前言 面试灵魂一问&#xff1a;说说对 IP 数据报中 TTL 的理解&#xff1f;我们都知道&#xff0c;IP 数据报由首部和数据两部分组成&#xff0c;首部又分为两部分&#xff1a;固定部分和可变部分&#xff0c;共占 20 字节&#xff0c;而即将讨论的 TTL 就位于首…...

Fabric V2.5 通用溯源系统——增加图片上传与下载功能

fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...

SQL慢可能是触发了ring buffer

简介 最近在进行 postgresql 性能排查的时候,发现 PG 在某一个时间并行执行的 SQL 变得特别慢。最后通过监控监观察到并行发起得时间 buffers_alloc 就急速上升,且低水位伴随在整个慢 SQL,一直是 buferIO 的等待事件,此时也没有其他会话的争抢。SQL 虽然不是高效 SQL ,但…...