Sunday, August 22, 2021

V2EX - 技术

V2EX - 技术


Spring 应对 IO 密集 的 web 业务系统有什么成熟的做法

Posted: 22 Aug 2021 03:54 AM PDT

也写了 spring 一段时间,发现 spring 比起 event-loop 的相关框架再处理 io 密集或者并发多的时候是性能比较低。
查了相关的资料,总结出来就是

1: 直接换 vert.x,但是语法以及生态完全不同。
2: 上 spring cloud, 注册多个服务硬抗
3:spring webflux, 好像是改了 controller 那边的方法以及拦截器之类的,但其他可以复用?不知道有没有坑,以及生态怎么样
4: 多用 servlet3 返回 callable,复用处理线程。

大家在业务里最主要用的是 2 吗?其他是不是都有坑或者生态问题? 想请大家指教一下。谢谢

理想汽车招聘高级 IoT C++ 开发工程师

Posted: 22 Aug 2021 03:47 AM PDT

# 招聘
理想汽车招聘高级 IoT C++ 开发工程师

## 岗位职责
1. 参与开发分布式的 IoT 系统基础设施,覆盖车端控制域、自动驾驶域
2. IoT 系统基于 Gossip+CRDT 协议的多端数据结构同步、响应+声明式的流系统构造,采用分布式平衡网络技术
3. 参与车内 SOA 基础架构开发
4. 协助车端应用开发者集成 IoT SDK

## 技能要求:
1. C++ 经验丰富,泛型、模板元、函数式编程信手拈来
2. 擅长异步、高性能网络编程技术
3. 英语能流利阅读,面试时会随机通过阅读技术文章来确认

## 如符合以下条件,会优先面试:
1. 理解 Coroutine 深层原理,丰富的开发经验
2. 有自己长期维护且保持一定活跃的 GitHub 账号。
3. 有自己的技术博客或其他公开输出内容。
4. 在原有公司多次获得高分绩效评定。

## 联系信息
如有兴趣请发简历或简介到 chenpengfei@lixiang.com

如何统一管理应用中第三方的 APIs?

Posted: 22 Aug 2021 02:58 AM PDT

目前业务依赖大量的第三方 API,每个 API 都有自己的 authentication 的逻辑和相关 secrets ( client id,secrets 等等)。目前的做法是针对每个需要调用的应用都需要封装一层 API,然后将这些 secrets 用环境变量或者 config 来配置上去。

目前存在几个问题:

  1. 维护困难,一旦某个 secret 更新,需要挨个修改全部的应用,如果漏掉一个就会挂掉,部分应用需要紧急发布。
  2. 容易泄漏,这些 client secrets 比较重要,需要有权限控制。但是由于放在应用里面,任何一个应用开发者在本地启动的时候,都需要加载这些配置,一旦加载从内存等都是可以找到的。

目前的解决方案:

  1. 将这些 secrets 和逻辑收敛到一个 Web 应用中,这个应用将读取 secrets 然后支持接收请求,针对不同的第三方 API 进行对应的逻辑,比如获取 access token 然后附加到 request 上面转发给实际接口,然后返回接口的 response 。相当于透传请求,同时附加 access token 等信息。
  2. 这样只需要控制好这个应用的权限即可,维护 secrets 只需要修改一个地方。

但是这个解决方案的问题:

  1. 可能会形成单点故障,如果挂了的话。不过可以用 K8S 等方案解决。
  2. 请求本身来源的鉴权方式不好实现。由于可以被很多应用使用,这里假设最简单的情况就是没有任何校验,拿到任意请求均可透传。但问题很明显,一旦泄漏就完全没有秘密了。所以这个校验规则要如何实现? IP 白名单?还是再实现一套 OAuth 的校验?

所以目前的几个问题:

  1. 你的公司是否有类似需求?是如何实现的?
  2. 是否有开源或者 SaaS 服务提供类似的功能?这种技术或者需求是否有一个关键词?
  3. 数据库连接面临同样的需求,即避免将数据库用户密码等存放在各个应用中,数据库如何实现?

闲来无事,求推荐点三个月左右能入门的兴趣爱好、技术方向

Posted: 22 Aug 2021 02:49 AM PDT

事情是这样的,我转行了,老家找了个小公司,活不多钱凑合,开开心心做到七月底,奈何南京 yq 复发,公司受影响很大。

目前大概率闲到十月份,小概率直接闲到年底。一礼拜上一天班,不是跟你凡尔赛,薪水和项目挂钩,现在每天烧烧菜见见朋友,闲成这样到年底钱袋子炸了,人估计也疯了。

苦思冥想想到自己还有点前后端基础,可以接点外包,写写代码挣点钱,就当陶冶情操,万一公司倒闭了也能糊口饭,稍微研究了下,恕我直言,太卷了,以我的技术能力和智商,应该是接不到外包了,也实在拉不下脸和毕业生一起摸鱼混资历(当然如果我现在的公司倒闭了可能还是要混的),另一方面说不定好不容易张罗着接了个外包,现在的公司又开始忙了。

彻底迷茫了,所以求大家推荐点技术方向给我研究研究,越耗时间越好,耗时间是唯一需求,经济上投入希望在万元以内,方向不限,除了投资。

周末调试了 grpc C++

Posted: 22 Aug 2021 02:30 AM PDT

层层封装,单步调试也没看出来 socket 收发是在哪里处理的。。。。

有比较熟的大神吗,指点一个

《 Python 进阶》2021 更新版发布,欢迎大家提出意见或表示支持

Posted: 22 Aug 2021 01:46 AM PDT

自 2016 年《 Python 进阶》中文版第一次发布以来,已经 5 年了,本书的 github repo 收到了 5800+赞,非常感谢社区对我们的认可,也说明了用心的做精品,好作品自己会说话。

这几年译者团队忙于各奔前程,有一两年没怎么更新了,最近看到 github repo 每天的 PV 还维持在平均 150 左右,还是说明能帮助到一些人的(还不算其他国内镜像托管版本的阅读量,如极客学院,PythonTab 等)。

所以,老苏我决定把此书再做了一次大的修订,希望能作为一部 Python 参考的经典,随时能帮到国内的 Python 程序员们,主要更新如下:

  1. 同步原著的全新目录结构,对比之前零散的章节,现在基于分类的目录,会更便于查找。
  2. 基于 V2EX 网友(@nightv2)提出的对阅读体验的建议,把每个章节里的小节合并在一个文件里,然后使用文件内的导航进行小节跳转。
  3. 针对英文原著的新内容和修复,做了同步。
  4. 放弃使用 GitBook 服务,因为 2020 年 GitBook 已经改变了商业模式,不再支持独立托管,很多国内镜像已经长久得不到更新同步,不利于开源社区的分享传播。
  5. 改用 GithubPages 服务,可以直接使用 Jekyll 生成静态网站,方便大家的本地部署或者托管。目前官方版本部署在https://py.eastlakeside.cn,会实时自动更新。
  6. 使用了全新的主题,目录导航和顶栏搜索带来非常流畅丝滑的阅读体验。
  7. 后续考虑增加国内 Python 社区网友建议的实用的主题,把《 Python 进阶》做成实战性很强的适应国内互联网发展的宝典。

再次感谢各位给《 Python 进阶》提过 issue 和 PR 的贡献者们,谢谢你们对国内 Python 程序员们的帮助和贡献!

恰饭时刻~ 😘
本书凝聚了作者不少心血来打造一个精品,如果本书对你有所帮助,可以请我喝杯咖啡☕️: https://dun.mianbaoduo.com/@eastlakeside,谢谢你的认可,这将是我持续创作的动力。

Xmacs v2021.1 发布了

Posted: 21 Aug 2021 11:57 PM PDT

本次发布只提供 Windows 平台安装包。由于个人精力有限,Xmacs v2021.x 暂时专注于 Windows 平台。后续会把 macOS 的构建打包脚本开源出来。

重要变更

  • 基于 GNU TeXmacs 2.1
  • 使用 Qt 5.15.2
  • 支持 SageMath 插件

特性一览

  • 标准:完全兼容 GNU TeXmacs v2.1
  • 界面:使用 Qt 5.15.2 构建
  • 界面:支持鼠标滚轮放大和缩小
  • 界面:工具→杂项→显示键盘按键支持显示中文输入
  • 编辑:临时解决了 Windows 平台输入法随机提交英文字母的问题
  • 版本:版本→历史支持查看重命名过后的文件历史记录
  • 插件:内置 Quiver 插件,支持直接粘贴 Quiver 平台导出的 LaTeX 绘制交换图
  • 插件:自动检测 gnuplot,Asymptote 和 Graphviz 的二进制文件
  • 插件:自动检测 Octave 6.x,并修复 Octave 插件无法启动的问题
  • 插件:完成 SageMath 插件在 Windows 平台的适配
  • 插件:完成 Eukleides 插件在 Windows 平台的适配
  • 中文:本地文件链接支持中文文件名
  • 中文:在使用中文作为文档语言时,不自动翻译算法和伪代码中的关键字

以上特性中,未加粗的特性,表示已经将改进提交并合并至 TeXmacs 官方开源版本,能够在下一个版本中使用。

特性说明

对于 SageMath 插件,请在安装 SageMath 的时候,请使用管理员权限,为所有用户安装,否则 Xmacs 无法检测到 SageMath 。推荐使用 SageMath 9.2 。

下载安装

https://gitee.com/XmacsLabs/Xmacs/releases/v2021.1

请问 服务端渲染的站点如何使用 websocket?

Posted: 21 Aug 2021 11:52 PM PDT

最近自己在用 goframe +adminLTE 写一个后台管理站点,所有页面都是服务端渲染。我要做一些通知要用到 websicket 。这个前端的 websocket,要怎样创建才能只需要创建一次就好了?

现在的情况是,前端每点击一个菜单或者页面,都会全部重新渲染。(当然页面的部分数据请求使用的是 Ajax)

如果直接每点击一个页面就建立一次,断开一次,这样肯定不合理…… 请问有什么好的方法吗?

升级 win11 后 蓝牙连接 airpods 3 的声音变得很小,大家有遇到吗?

Posted: 21 Aug 2021 10:15 PM PDT

如何解决得呢?

求一个 yacy 的 docker-compose 文件

Posted: 21 Aug 2021 08:56 PM PDT

yacy 看起来是不错的一个自建搜索引擎,请教如何实现一个 docker-compose 版本的 yacy 呢?感觉 vol 最后会很大啊。自己写了一个一直启动不起来。

version: '3.3'
services:
yacy_search_server:
image: yacy/yacy_search_server:latest
container_name: yacy_search_server
ports:
- 8090:8090
- 8443:8443
volumes:
- yacy_search_server_data:/opt/yacy_search_server/DATA
restart: unless-stopped
logging:
driver: json-file
options:
max-size: 200m
max-file: 2
volumes:
yacy_search_server_data:
driver: local

No comments:

Post a Comment