Wednesday, March 23, 2022

V2EX - 技术

V2EX - 技术


分享一个用于打印复杂数据结构的库 gop

Posted: 23 Mar 2022 05:49 AM PDT

项目地址 https://github.com/ysmood/got/tree/master/lib/gop

目的是把复杂的结构体打印成易于阅读的格式。输出的格式使用的 Go 原生语法,不需要学习任何额外的知识就可以阅读输出。不像其他库可能需要考猜测输出格式。

特性

  • 使用原生 Go 语法输出
  • 支持循环引用(比如 go-spew 的这个 bug, 而 gop 可以正常打印)
  • 更好的 rune, []byte, time 等数据的可读性
  • 字符串里的隐藏字符也会被打印
  • 可配置的高亮打印
  • 根据排序后的 key 输出一致的 map
  • 自动将多行大段文字打印成多行以便于阅读
  • 可扩展的 API

用法

通常你只需要用 gop.P 函数:

package main  import (     "time"      "github.com/ysmood/got/lib/gop" )  func main() {     val := map[string]interface{}{         "bool":   true,         "number": 1 + 1i,         "bytes":  []byte{97, 98, 99},         "lines":  "multiline string\nline two",         "slice":  []interface{}{1, 2},         "time":   time.Now(),         "struct": struct{ test int32 }{             test: 13,         },     }     val["slice"].([]interface{})[1] = val["slice"]      gop.P(val) } 

输出:

vscode 有哪些好用的插件?

Posted: 23 Mar 2022 05:45 AM PDT

我正在用的:

  • darcula theme 修改默认主题,不会看起来那么刺眼
  • git graph 查看 git 记录
  • go/rust-analyzer/solidity 分别是 go/rust/solidity 的语言支持,挺好用
  • markdown all in one ,也挺好用

自己编译 Android 源码烧写到手机里,需要做什么准备工作?

Posted: 23 Mar 2022 05:45 AM PDT

目前手里有书《深入理解 Android 内核设计思想》《深入理解 Android 卷 I 》,我可以按照书上的步骤编译出 img 来。这两本书里都有介绍怎么编译 Android 源码。

但之前确实没有烧写过手机,只是之前买过小米手机(忘了什么型号,这手机还掉了),然后升级过 ROM ,我记得步骤是先解锁,然后用 论坛上的方法来 线刷。

  1. 第一个问题,我是从淘宝上随便买一个二手安卓手机就可以吗(如何询问卖家,哪种二手手机才是我需要的 可以烧写的手机)?是不是最好买小米的,因为小米的可以解锁

  2. 如果把自己编译出来的 img ,烧写进手机里,我可以之后自己再去百度。不过大佬们也可以推荐点 博客或者教程。

搞这个事的目的,主要是为了研究 Android 源码,光看书总觉得少了点什么。理论上,我可以加打印日志,或者修改源码了。

不敢用腾讯云了

Posted: 23 Mar 2022 05:44 AM PDT

今天收到腾讯云通知,说消息队列服务下周关闭,建议迁移,我直接懵了。公司有好多已经无人维护的历史服务,都集成了消息队列,怎么办?新接口和老接口不一样,怎么改?一边安排迁移工作,我一边想,是不是很久以前通知过,我没看到。然后我去问客服,客服说,是 4 天前通知的。好家伙,10 个工作日。下线一个基础服务,腾讯云只给你 10 天时间。

现在 GO 语言面试这么难吗?

Posted: 23 Mar 2022 05:38 AM PDT

下午面了一个杭州的电话面试,我没有 go 工作经验,只有 go 项目经验,面试前已经讲过了,面试官问我,top,ls 的实现原理?我以为这就完了,又接着问我 sp 寄存器,x86 和 arm64 为什么有区别,寄存器怎么实现的?这人说什么话之前都会说一个,那我问你一个简单的问题把,最后他问了个面向对象是什么,我就说面向对象把事物对象化,对象有自己的属性和行为,也就是方法。他说,我看你是完全不懂啊,你不适合,就挂电话退微信群了。

VSCode 中,如何显示 jupyter 文档中的图片呢?

Posted: 23 Mar 2022 05:38 AM PDT

被这个问题困扰了许久:

在 jupyter notebook 中,直接用 ctrl+c ,ctrl+v ,就能把图片粘贴到 jupyter 的 ipynb 文件中,不需要考虑引用路径问题,换台电脑也能看到 ipynb 文件中内嵌的图片。

但是,在 VSCode 中打开 ipynb 文件,公式、格式都无问题,就是图片显示不了,请大家指点迷津。

喜大普奔 leader 终于走了

Posted: 23 Mar 2022 05:36 AM PDT

书接上回,嘴炮王 leader 用了一个多月终于证实了工作量只能东拼西凑搭一个后台登陆和菜单页面,对一个接口还要 2 周,强行要后端改返回的数据结构,今天终于被开了

请各位帮忙看看这道题(Go),想了一天没想明白

Posted: 23 Mar 2022 05:29 AM PDT

这段程序输出什么?
  package main    func main() {        println(DeferFunc1(1))       println(DeferFunc2(1))       println(DeferFunc3(1))   }    func DeferFunc1(i int) (t int) {       t = i       defer func() {           t += 3       }()       return t   }    func DeferFunc2(i int) int {       t := i       defer func() {           t += 3       }()       return t   }    func DeferFunc3(i int) (t int) {       defer func() {           t += i       }()       return 2   }  

输出结果是 4 1 3 ,我没明白第二个为什么会是 1 呢

在 Linux 的 shell 脚本里,如何调用 make && make install?

Posted: 23 Mar 2022 05:24 AM PDT

想做个 sh 脚本完成软件的准备工作
其中有一步是对软件代码编译安装
如:/tmp/mysql-5.1.71/configure --xxx 已经完成后
要在 /tmp/mysql-5.1.71/的路径下执行 make && make install 在 sh 脚本里:
./testsh.sh: line 1: /tmp/mysql-5.1.73/make: No such file or directory

请问正确姿势应该是怎么样?

3000 以内有能放心给父母使用的 android 手机吗?

Posted: 23 Mar 2022 05:19 AM PDT

屏幕大点吧,iPhone SE 4.7 的就太小了

国内外流量分流的解决方案(系统级别)

Posted: 23 Mar 2022 05:01 AM PDT

现在有一个 PandaVPN 监听本地的 8080 端口,在 Chrome 浏览器中可以用 SwitchyOmega 实现国内外流量自动分流,我想在系统层面做到流量分流,网上查了很多教程。

网上说 iptables + ipset 可以实现,但我没弄成功,iptables 规则如下:

chain="SHADOWSOCKS"  sudo iptables -t nat -N $chain 2>/dev/null  sudo iptables -t nat -I $chain -d 0.0.0.0/8 -j RETURN sudo iptables -t nat -I $chain -d 10.0.0.0/8 -j RETURN sudo iptables -t nat -I $chain -d 127.0.0.0/8 -j RETURN sudo iptables -t nat -I $chain -d 169.254.0.0/16 -j RETURN sudo iptables -t nat -I $chain -d 172.16.0.0/12 -j RETURN sudo iptables -t nat -I $chain -d 192.168.0.0/16 -j RETURN sudo iptables -t nat -I $chain -d 224.0.0.0/4 -j RETURN sudo iptables -t nat -I $chain -d 240.0.0.0/4 -j RETURN    sudo iptables -t nat -I $chain -p tcp -m set --match-set outwall dst -j REDIRECT --to-ports 8080  sudo iptables -t nat -I PREROUTING -p tcp -j $chain sudo iptables -t nat -I OUTPUT -p tcp -j $chain  

ipset 有两个表,一个 inwall ,一个 outwall 。 大佬看出有什么问题吗? 有没有更优雅的办法,一个流量分流用 ipset 和 iptables 感觉有点麻烦。

➤ iptables --version

iptables v1.8.7 (nf_tables)

➤ sudo ipset --version

ipset v7.15, protocol version: 7

➤ lsb_release -a

... Release: 22.04 ...

到底应该怎么去架构?

Posted: 23 Mar 2022 04:53 AM PDT

两天时间看完了《架构整洁之道》( Clean Architecture ),可能其中代码很少,看完了觉得自己收获并不多,心塞。

为什么不 show me the code 我还好理解点。当然也可能是我太菜了。。。

Imgur

新买的 k50pro 到了,有没有可能刷原生的安卓系统

Posted: 23 Mar 2022 04:50 AM PDT

首发的 k50pro 买到了,但是害怕内置反诈 APP 。今天咸鱼逛了几个代刷 rom 的,都说没法说原生安卓系统。。 不知道是不是没有合适的 rom 。想请问下有没有可能自己动手刷原生的 ROM 。 最少平时翻墙,看看币圈,都不会提心吊胆的,而且系统也干净。

v 友们,我写了一篇阮一峰风格的周刊 (🖼 Browser = OS 、文章、工具、资源、文摘、言论),跟大家分享一下。

Posted: 23 Mar 2022 04:48 AM PDT

011 🖼 Browser = OS 、文章、工具、资源、文摘、言论

欢迎打开第 011 期「野生架构师」周刊,这是由  lcomplete 每周发送的 Newsletter ,本期的主题是「 Browser = OS 」,另外分享优质的文章、工具、资源、文摘和言论。

mighty

💡 关于本期周刊

在我前十期的周刊中,整体风格主要是围绕不多于 3 个话题将我想表达的给说出来,这满足了我自己的表达欲,如果能引起一些读者朋友的共鸣或产生帮助,那自然也是非常好的,但这似乎是次要的,这种周刊写法并不能很好地完成分享高质量信息的初衷。

在我自己阅读 Newsletter 的过程中,话题性的文章除非写的特别优秀,否则很难对我产生实质性的帮助,而 高级大杂烩 形式的 Newsletter 往往令我收获更大,这里面最优秀的要属 阮一峰的科技周刊 ,基本上每一期都能在其中发现优质有趣的信息,所以本期周刊也采用阮一峰科技周刊的形式,以表敬意。

注:我在 009 🌈 Newsletter Of Newsletters 、海绵宝宝的智慧 这期提到 高级大杂烩 形式的 Newsletter 。

📝 本期话题:Browser = OS

连续几期在周刊前面使用英文开头,这其实并非刻意为之,这一期我先尝试使用中文来写主题,但写出来都较冗长,所以干脆使用英文,更能简洁地表达话题含义。

浏览器跟操作系统并无本质区别

浏览器跟操作系统是否有本质上的区别,这是一个有争议的话题,在 V2EX 上也曾经有一个热门的帖子讨论过,有些人说浏览器在操作系统面前只是个弟弟,怎么能和操作系统相提并论呢?诚然,如果严格从技术上去区分,这两者必然不是同一类东西,但是从使用的角度,他们有本质上的区别吗?实际上是没有的,Browser 和 OS 上都能够承载 App,都有其生态,OS 上的 App 比 Browser 上的 App 权限大一些、能调用的 API 多一些而已。

浏览器倒逼操作系统进化

微软的前总裁鲍尔默在 10 多年前也表达过浏览器和操作系统并无实质差别的观点,这些年 Chrome OS 在国外大行其道,越来越多优秀的 Web App 涌现:Figma 、Notion 等等,这些足以表明浏览器的地位越来越高,直逼操作系统。我想这也是承诺 Win10 会是最后一个版本的微软又推出 Win11 的一大原因,不光是 Win11 ,据说 Win12 也在开发中,随着网络越来越发达,浏览器越来越强大,操作系统也需要进化

操作系统的进化对于科技工作者来说是喜闻乐见的,所以我曾第一时间安装了 Win11 ,但结果令我还是略微失望,除了界面更加美观、系统设置更加统一外,带来的更多的是一系列问题,尤其是一些常用软件:飞书频繁卡顿、Logseq 卡顿,虽然这些不能全赖 Win11 ,但使用体验确实大打折扣,希望这些问题能够尽快得到解决,正式版能够尽快推出。

浏览器越强大,不同操作系统的差别越小

经过这么长时间 Win11 的使用,让我越发觉得 Mac OS 的优秀,不仅界面美观、操作统一,最重要的是乔老爷子提倡的软硬件结合做的非常优秀,我的 Macbook Pro 为 18 年的老款,内存只有 8G 、CPU 也仅为 i5 ,但却很少发生卡顿,虽然大多数时候是轻度使用,开发时基本只开一个 IDE ,不像在办公使用 PC 时经常需要打开许多 IDE ,但它很好地满足了这些场景下的需求,如果升级到 M1 Max ,那绝对是令人心动的体验。

程序员应该使用 Mac OS 、Windows 还是 Linux ,这在 V2EX 上几乎是一个月经话题,我曾经也做过一个长回复,可惜找不到了,我的回答简单说就是:都用。只有都使用过,我们才能明白其中的设计内涵,在使用过程中,我们会潜移默化地提升自己使用软件和设计软件的能力

我是重度的 Windows 用户 + 偏重度的 Mac 用户 + 轻度的 Linux (桌面端)用户 + Chrome OS 用户,因为使用过这么多系统,所以我能够非常流畅地在各个操作系统之间切换,这除了软件使用能力的提升外,另一个非常重要的点就是,其中的核心软件 浏览器,并没有改变

因为 浏览器的功能越来越强大,不同的操作系统能够更好地无缝切换,所以现在已经不像多年前,需要在 Win 、Mac 和 Linux 中做出选择,在条件允许的情况下,我觉得对于程序员来说,这些系统都应该去使用。那么操作系统上层的 Browser OS 更是重中之重,值得我们花时间去深入学习,以便将它充分利用。

Web App 和插件共同组成了浏览器上的软件生态

如何用好浏览器,最重要的一点就是 扩展浏览器的能力,这就需要用到 插件 了,Vimium 、沙拉查词、AdBlock 等等插件能够大幅提升我们的效率,由于都是在浏览器的环境中,这些插件不仅起到相互协同的作用,同时它们的能力又能附加到无数的 Web App 中,未来插件市场会越来越丰富,和 Web App 一同构建起 Browser OS 中的软件生态。

浏览器领域的创新

既然 Browser 的地位这么高,在浏览器领域有没有一些创新呢?接下来分享一些这方面的创新项目:

1 、Vivaldi Browser

由前 Opera CEO 创办的 Vivaldi 浏览器,它将许多常用的插件( AdBlock 、摘要笔记等)直接集成到了浏览器中,使其开箱即用,另外还有一些增强功能:标签分组、在侧边栏中可以将网页进行固定等。将网站 pin 起来的理念是:将这些网页当作 App ,使其能够快速访问。MenubarX 这个 Mac 上的软件实际上也是应用了这个理念。

2 、Browserless

模拟浏览器运行一般会用到 Selenium 、Playwright 或 Puppeteer ,使用这些技术都存在着环境不一致的问题,因此最好将它们放在 docker 中运行。Browserless 是一个云服务,它允许客户端连接并控制服务端 docker 中运行的无界面浏览器,也可以利用它在公司内部搭建一套这样的服务,统一自动化执行环境。

3 、Mighty

你有没有抱怨过 Chrome 运行变慢,内存占用过多? Mighty 的出现就是为了解决这个问题,它使用串流技术,让你能够使用云端超强电脑中的浏览器。我们对云游戏的概念并不陌生,因为运行游戏需要较高的计算资源,而云上网有没有潜力呢?虽然许多人并不看好这个项目,但如果未来网络带宽足够便宜、云资源像水电一样计费真能实现的话,云上网未尝不可,即使云上网的模式失败,相信串流技术在未来一定会有越来越多的运用。

📖 文章

1 、⭐51W+ 的终端命令行工具助你成为 10 倍程序员

英文版:10 Command Line Tools Every Developer Should Know

这是我去年花了一点点时间写的文章,交给 bytefish 翻译到 Medium 上,截止到目前,1 个月的时间,获得了 $150 的收益。

2 、你可以创造运气

程序员的喵 写的第一篇周刊型文章,我在 Newsletter 中已经多次提到过他,以往写作我觉得不应该重复,不过现在我觉得也不要紧,高质量的信息就是应该重复出现。

luck

最近也越来越体会到写作可以创造 Luck Surface Area,by the way ,我创建了一个 Telegram 频道 Luck Info Hunter

3 、黑客原则

hacker-laws-zh ,💻📖 对开发人员有用的定律、理论、原则和模式,hacker-laws 的中文翻译。

4 、It's time to win

互联网、社交平台、社交状态、粉丝数、影响力、发言、表达,这不是一场在线游戏吗?

It's time to win The Great Online Game.

5 、The salesman and the developer

一篇老文,讲销售员和程序员的故事,销售员和程序员一块去捕熊,销售员把熊引到屋子,对程序员说交给你了,说完后得意洋洋地又去找熊了。

6 、Why […'👩‍❤️‍💋‍👨'] returns ['👩', '‍', '❤', '️', '‍', '💋', '‍', '👨'] in JavaScript?

帮我翻译文章的 bytefish 写的,很有意思的 emoji 科普。

7 、The Most Important Skill Nobody Taught You

Medium 上最热门的一篇文章,讲的是 独处的艺术

🛠 工具

1 、Kubernetes YAML Generator

在线生成 k8s yaml 文件。

2 、MarkDownload

将网页拷贝为 markdown 格式。

3 、Smart TOC / 智能网页大纲

鄙人二次开发的浏览器插件,智能生成网页大纲,支持 Inoreader 和 Feedly 。

4 、EmojiAI 😃

输入文字,自动帮你挑选 emoji ,挑不到合适的就来 EMOJIALL 😊 找吧。

5 、Poet.so

tweet

将推文转换成好看的图片。

6 、Ray.so

将代码转换为好看的图片,Raycast 团队出品。

7 、Scoop

Windows 下的命令行安装器。

8 、OhMyStar

Mac 下组织 Github Stars 的工具,类似的工具还有 RemuAstral

9 、Fig

在终端添加 IDE 风格的智能提示,目前仅在 Mac OS 下可用,另外该团队还上线了 shell.how,这是一个解释 shell 命令如何工作的网站。

🗂 资源

1 、What To Tweet?

从这里可以发现写推文的灵感。

2 、Open-source alternatives

在这里找到热门 App 的开源替代品,比如:

3 、Unsplash

提供免费可供使用的图片。

4 、awesome-cli-apps

一个关于命令行 app 的收藏列表。

5 、PodLetter

Podcast 和 Newsletter 导航网站。

6 、独立开发变现周刊

分享独立开发、产品变现相关内容,每周五发布。

📋 文摘

1 、The Most Important Skill Nobody Taught You

人类的所有问题都源于人类无法独自安静地坐在房间里。——Pascal

问题的根源在于我们从未学会独处的艺术。

在互联网时代,这个问题已经被放大了。

你越不喜欢独处,就越有可能不了解自己。

我们对孤独的厌恶实际上是对无聊的厌恶,从不面对这种虚无就是从不面对自己。

正确的做法是面对它。

不要害怕独处,它提供了认识自己的绝佳机会。

腾出时间,无论是每天还是每周,只是静坐一会儿,思考一下我们的想法,我们的感受,它能为我们带来鼓舞和激励。

「了解你自己」是世界上最古老的哲学智慧,独处不能解决所有问题,但它是一个好的开始。

2 、架构师应该接受低代码的 5 个理由

  1. 减少技术债务
  2. 更好的新员工体验
  3. 简化工作流程和数据集成
  4. 自动化更多业务流程
  5. 加速数字化转型

📜 言论

前不久,来自美国的一项医学研究表明了这一点:视神经细胞只要受到蓝光 8 分钟刺激,就会让身体持续兴奋超过 1 小时。而且调查还发现,比起其它应用来说,刷抖音后入睡所需要的时间最久,因为刷抖音会更加刺激肾上腺素和多巴胺的释放,给人「快乐」的感觉,所以睡眠会不断延后。——极客简报

The key is not to discard The Box of Daily Experience and find a new one — it's to warmly embrace the one that we have now — with its joys, its flaws, and everything in between. ——Travel Is No Cure for the Mind


如果你觉得写的还不错的话,欢迎关注和订阅。

  • 🐦 我的 Twitter ,及时获取高质量分享:野生架构师 🐒
  • 📧 我的 Newsletter ,每周一篇:野生架构师,它分享简短实用的效率方法 🪄、优质文章 📑、编程知识 🎹、实用工具 🛠️ 等,感谢你的阅读!

在我发布这篇周刊之后,还看到两个关于浏览器的推文,也跟大家分享一下。

在我心中,Web 前瑞应用的两大天花板,一个是 Google Doc ,另一个是 Figma ,而且各大浏览器上都完美工作,再这么干下去,浏览器就成下一代的操作系统了……今天好多桌面应用假装是 Native 的,实际上是 Web 的,如果浏览器再增强下去,桌面 App 可以是一个 URL 的快捷方式的存在了……——左耳朵耗子

朋友们,2022 年可以考虑搞一台 chromebook 玩玩,它早就不是只能运行浏览器的废材了。如图所示,浏览器、chrome 应用、Linux 终端、Android 应用,可以和谐地同时运行在一套桌面环境下。不要三千五千,只要 1700 ,比平板还便宜,自带键盘和保护套,还有一个触控笔…… ——象牙山刘能

golang 有没有办法获取当前 TCP 发送缓存区剩余空间。

Posted: 23 Mar 2022 04:13 AM PDT

例如 TCP 发送缓冲区 10k,已经写了 8K ,剩余 2K 。有办法获取吗。

关于 24 期免息买了三星 S22 手机,开心等待发货的近一个月时,信用卡突然提示我月底要还款 5799 的事。

Posted: 23 Mar 2022 03:51 AM PDT

三星手机购买投诉

事情开始

秉承着三年换一次手机的个人传统,外加手机已经烧屏以及手持三星 S10三星忠实用户(已经脱粉了)。看到 S22 发布后,2 月 28 号兴冲冲的在三星网上商城购买了S22 远山灰配色

事情发生

3 月 21 日打开招商的掌上生活发现月底要还款 5799 。以为是显示错误,遂打电话询问了招商告诉账单的确是 5799 。惊慌。故在线询问三星网上商城 APP客服,回复是没有分期,全程只会说抱歉,确定不是个只会说抱歉的机器人。无语。最后打电话给三星网上商城客服人员,回复无法取消订单(因为定制款,我知道定制款不能取消。我只想分期),全程基本也只是抱歉,说向上反馈。无奈。3 月 22 日 11:00 再次拨打三星网上商城客服电话,询问昨天的反馈。告知只是记录了。想笑。交涉 20 分钟,方案有 2 个。1. 一直对我说抱歉。2.帮我申请个三星耳机,型号未知。我特么现在用的就是galaxy buds+,我是六耳猕猴吗?!需要那么多耳机!?我希望,让客服领导解决。告知就算领导也无法解决,只能反馈。离谱。

事情结果

目前自己的想法是下午再不给反馈,就只能拨打12315了。不清楚是否有效果。

这个是朋友在三星网上商城购买的订单截图,显示的是 24 期分期。分期是正常的。

这个是我在三星网上商城购买的订单截图,显示的是 24 期分期。但是没有分期,

三星到目前为止还是没有任何人主动找我解决这件事。

总结

舔狗不得 house 。三星手机能被国内的厂商干倒不是没有道理。所谓情怀,在厂商看到一文不值。呵呵。

请教一个微服务相关的问题,微服务中的鉴权中心应当整合用户账号服务吗?

Posted: 23 Mar 2022 03:16 AM PDT

是不是不应该呀?

我感觉微服务中的鉴权中心就负责跟网关配合好发 token 就可以了

但是我不太敢确定,所以来请教一下大家

请教大家关于 K8S 使用 GlusterFS+Heketi 为后端存储方案的问题

Posted: 23 Mar 2022 03:11 AM PDT

  初步想打算采用的架构如下:Pod 通过挂载的 PVC 访问 StorageClass 中存储的集群的 VIP 或者域名(通过 Service+Endpoint 实现)的 Heketi (集群外),Heketi 再去访问 GlusterFS 服务集群上的数据。

整体架构

  这样存储相关的服务都外置于 K8S 集群了。但是这样有个高可用的问题,这样部署的 Heketi 只能是个单点的应用,因为每个 Heketi 实例本身也有一个 DB 文件( boltdb )存储集群元数据。因此这个文件也要想办法共享出来让多个机器上的 Heketi 访问。我目前想到的方法就是每台机器再挂一块盘用来存这个 db 文件,这几块盘是被 Glusterfs 直接初始化组成的一个集群,而不是通过 Heketi 初始化。相当于图中的 db-vol-{1,2,3}存储 Heketi 的 db 文件,data-vol-{1,2,3}存储 PVC 的数据。

  现在的问题是:1 、这个架构本身是否合理; 2 、boltdb 是否支持多个 Heketi 实例并发修改数据,是不是要实现一个类似于单例模式的架构,同一时刻只有一个 Heketi 实例提供服务; 3 、如果需要单例模式,如何实现?是通过探活加上修改 Endpoint 保证只有一个 Heketi 提供服务,还是有别的方法呢?

  小弟第一次接触分布式存储,很多地方理解不到位,如果方案中有一些不合理的地方请各位大佬多提提意见,Thanks!

请教 AOSP 里 Service 删减的方法

Posted: 23 Mar 2022 03:04 AM PDT

默认的 AOSP 里,有不少自带的谷歌 APK 和一些系统 Service ,有什么文章推荐下怎么裁减吗?

本地已经配置好机器编译 AOSP ,有些 apk(如 Duo)和 service 不能随便删减,删减后碰到 Duo 一直出错的弹窗。

类似的问题不少, 想系统的看下删减的流程。 多谢各位

请教一个 sql 查询效率问题

Posted: 23 Mar 2022 03:02 AM PDT

如果对某加了 unique 索引的字段、或者主键字段查询,暂定字段名为 fieldA ,数据类型为数字,不回表的情况下,
where fieldA in (1)

where fieldA = 1 ,
两种查询效率上是否会有区别?

下班之后的时间大家都在干嘛?会学习提升自己么

Posted: 23 Mar 2022 03:01 AM PDT

最近刷一些大厂的面经,发现他们真的好优秀,一次能拿好多大厂的 offer ,博客写的也好。再看看自己,大厂面试第一轮也过不了,上班混混日子工作没啥挑战性,下班也就躺着不学习...

也许就像当初高中的时候,有些同学一直努力刻苦,所以能考上名牌大学,而我只能读个普通大学,就是这个道理吧

西甲联赛| DaoCloud > # Hello World

Posted: 23 Mar 2022 02:46 AM PDT

"

3 月 20 日 21:00 ,皇家西班牙人足球俱乐部对决皇家马略卡体育俱乐部,上半场结束之际,达德尔抢断后,送出精彩直塞球,助攻德托马斯破门,西班牙人领先进入中场休息。第 54 分钟德托马斯长驱直入射门被里科扑出,拉伊略门线处救险,马略卡经历门前虚惊一场。最终,西班牙人以 1 球小胜马略卡,保持三胜不败。


绿茵场上热火朝天,奋战正酣。观众席上出现了别样的 "加油"、"呐喊",一句代表程序员计算机启蒙的代码 "Hello World" ,伴随 DaoCloud > # 出现在观众席栏边的显示屏上,为比赛欢呼助威。

注:2022.3.20 21:00 西甲联赛,西班牙人 VS 马略卡观赛截图

「 DaoCloud 道客」作为一家中国科技创新公司,为何会出现在西甲联赛上呢?下面让我们一探究竟!

如今的国际体育竞技舞台上,不只是运动技能的比拼,更是科技的较量。在体育产业里,高科技公司的身影屡见不鲜。比如,德国知名的企业软件供应商 SAP 是德国足球甲级联赛的主要赞助商,并拥有一支自己的球队[1]。甲骨文在去年加入英超团队,成为其官方云合作伙伴[2],今年 2 月更是成为 F1 红牛车队冠名赞助商[3]。

此外,在海外市场,企业客户认可这样的品牌理念:科技公司代表创新,代表锐意进取,这同体育精神相得益彰。同时,现代化的体育竞技中,融合了很多的科技元素,二者之间密不可分。这进一步加剧了科技公司涌入国际顶级赛事。

由此,「 DaoCloud 道客」作为一家领先的云原生操作系统科技公司,出现在西甲联赛这样的顶尖赛事上,便也不难理解了。其实这一次现身西甲联赛,还有三个方面的原因。

首先,是怀着一颗热忱之心,为西班牙人球队中的中国球员加油助威

同时,「 DaoCloud 道客」深耕国际顶尖的开源项目,时刻关注市场走向,此次亮相西甲联赛,也代表着「 DaoCloud 道客」迈上全球市场的决心和信心。 「 DaoCloud 道客」在英国、荷兰等地均设立了办事处,在欧洲市场,已开展了零售行业相关的业务,项目进展良好,深受客户认可。在云原生操作系统领域,基于在开源项目上的长期贡献,「 DaoCloud 道客」在全球一定范围内拥有很高的技术知名度,并且在中国产业里做的大量行业案例,在欧洲市场上具备很强的指导作用,这进一步助力了其全球业务的开展。未来,「 DaoCloud 道客」将在全球市场重点拓展金融证券、智能汽车等领域。

此外,现在体育与科技结合得越来越紧密,体育数字化越来越先进,而这一切都离不开一个坚实可靠、稳定安全的数字底座。 「 DaoCloud 道客」与体育行业也有着紧密的接触和深度的融合,与 EMW 这样的体育专业公司一起打造体育与科技的整合方案,与行业专业教练进行跨界深入交流,同时也为中国竞技体育的数字化提供整体方案。

作为热爱中国足球的科技从业人员,我们一直在思考能不能用科技手段,尝试用云原生的思想,来解决足球运动这一典型的分布式架构下的动态调度与战术编排。

如,基于云原生技术打造数字底座,通过利用摄像头、传感器、光学仪器、VR 、AI 等工具和技术来追踪记录大量数据,辅助足球训练,提升训练效率和深度,优化比赛战术;同时,通过赛事实时数据分析、大数据预防伤病、运动视频分析等方面的进一步数字化应用,来增强体育行业管理,助力其高效发展。从而,让高科技真正走入体育竞技,引领未来足球技术的革新,助力中国足球重焕新生!

事实上,新兴的技术除了辅助优化训练、提供赛事实时分析、改善商业运营外,也提升了媒体转播的体验。数字化在体育赛事数据服务、竞技水平提升、体育综合资讯、综合管理等领域的应用优势,已经日趋明显。科技正在让传统足球踏上新的征程,「 DaoCloud 道客」也将为这一事业添砖加瓦,贡献一份力量。

注:2022.3.20 21:00 西甲联赛,西班牙人 VS 马略卡观赛截图

特别感谢 EMW Sport 此次助力「 DaoCloud 道客」登陆西甲赛场,希望更多具有全球视野的科技企业,在 EMW 帮助下把中国的数字科技带到全球市场。


引用来源:

[1]https://news.sap.com/2013/06/sap-named-new-main-sponsor-of-german-football-club-tsg-1899-hoffenheim/

[2]https://xw.qq.com/amphtml/20210507A028WG00

[3]https://xw.qq.com/cmsid/20220210A05UOZ00

使用 SwiftUI,选择文本时没有 cursor?

Posted: 23 Mar 2022 02:44 AM PDT

Text("some text") .textSelection(.enabled)

文本倒是能选择了,长按文本,只弹出了一个气泡菜单,有 2 个选项:Copy | Share

不过,如果我只想选择里面的部分文本呢?比如"some"。为什么没有可以左右移动的 cursor ,让用户手动选择呢?

是不是有什么配置项?或者还要自己封装 UIView ?

手机厂商是怎么维护多个版本?

Posted: 23 Mar 2022 02:37 AM PDT

比如小米,他们在安卓 AOSP 上修改,有多款手机,怎么做代码管理 ?

是多个分支吗? 还是在源码里通过 if else 来做管理? 或者是像 buildenvsetup.sh 那样传入不同的型号?

多谢

求推荐不需要实名认证的域名托管服务商

Posted: 23 Mar 2022 02:22 AM PDT

有个 .cc 域名,在阿里云购买,今天收到短信,提醒半个月后未完成实名认证就要停止解析。

目前想迁出 aliyun ,求推荐域名托管服务商。

PS:没有实名是因为买域名的时候 .cc 后缀不让实名,也不让备案。

有基于 django 的开源博客系统吗?

Posted: 23 Mar 2022 02:13 AM PDT

打算搭建一个个人博客,求推荐 python 开源的博客系统。

大家如何做甲方关系呀?求教

Posted: 23 Mar 2022 02:08 AM PDT

现在基本大的需要走招投标的项目很多,如果新公司想与甲方提前做好关系,怎么入手?请教有经验的朋友们,感谢,感谢

有在代码注释里加上文件和文本的链接方便跳转的 vscode 插件吗?

Posted: 23 Mar 2022 02:04 AM PDT

主要是在不同类型的文件中跳转,比如在一个 html 模板文件里写上注释:
<!-- filelink:app1/view.py#str="test_var_name"-->
在 python 的 views 文件里写上注释
# filelink:app1/template/test.html#str="test_var_name"
按着 ctrl 点击就可以跳到目标文件的某个字符串或者某行上,如果能这样感觉会方便很多,现在这种跨语言的应该是不太可能能够跳转的吧。

You are loading the ES modules build of React Router on a page that is already running the CommonJS build...

Posted: 23 Mar 2022 01:58 AM PDT

项目太大没有办法分享出来。

最新新做了一个包,ui-components ,把 app 里面的一些共用的 ui 组件都放到这个包里。本来还好的,但是昨天,把一个文件 A (引用了 react-router-dom )的放到了 ui-components 包里,结果,在跑 app 的 unit test 的时候,就报这个错了。unit test 是用的 jest 。

但这个文件 A 对应的组件,是肯定要放到 ui-component 里面的。这个 A 组件,也是需要用到 react-router-dom 里面的组件,比如 Link.

那现在怎么办?是因为 jest 事先加载了一个 cjs 版本的 react-router-dom ,然后在调用到 A 的时候,又使用了一个 esm 版本的么?

可是,我尝试写了一个很简单的 test case ,引用 ui-component 里面一个纯组件(没有引入 react-router-dom ),运行,还是报这个错。

google 了一下,貌似很罕见,寥寥几条相关内容,看完,还是不是所云。

有没有什么想法或者头绪?谢谢!

二线程序员的出路在哪里

Posted: 23 Mar 2022 12:53 AM PDT

最近有点迷茫了,程序员在一线已经将近 7 年,还是混得不咋地,打算过两年回老家省会,一个二线城市,不知道回去应该干啥了,继续做程序员在二线还是混吃等死

你们 unraid 在重启 truenas 会卡住吗?

Posted: 22 Mar 2022 11:25 PM PDT

我这边 e5-2680v3 重启就必须要重启宿主机 才可以 不然总有一个 cpu 核心卡住。VNC 永远卡住。但是我另外一台 4415u 的小主机就没问题。咋办呢?如图: https://tva1.sinaimg.cn/large/e6c9d24egy1h0jmeofo17j20uj0u0dib.jpg

go make 与 new 关键词的区别

Posted: 22 Mar 2022 11:18 PM PDT

网上有相当的的文章讲述,但是还是不太理解,可以通俗的讲下之间的区别吗

写了篇千字长文 - react-draggable 中文教程

Posted: 22 Mar 2022 11:13 PM PDT

最近用 react-draggable 觉得很不错,功能丰富的同时 API 相对简单。读了一下代码发现实现得也比较干净,所以兴起写了一篇教程。整个教程基本上就是我开了一个新项目,从零搭起实现一个简单的 react 拖拽功能。

结果示例

示例

写的过程中我把代码也记录下来了,教程对应的代码放在了 github 上

=> react-draggable 中文教程对应代码

对应的一步步文字教程请戳 => react-draggable 中文教程

觉得有用的话请帮忙点个星,或者如果有什么可以改进的地方请给我留个评论 :)

请各位把代码甩我脸上,读取 json 文件之后怎么搜索

Posted: 22 Mar 2022 11:12 PM PDT

是为了写一个 utools 的插件,这个插件支持使用 nodejs

使用 fs.readFileSync(fileUrl) 读取 json 文件。

然后用 JSON.Parse 转换成 JSON Object ,

Json 文件内的结构大概是这样的:

qQgexO.png

我该怎么写才能实现:

查询到有这个数据时,列出这个数据,结束查找。

查到最后没有这个数据,列出一个提示,结束查找。

直播回顾|论道原生:容器网络的发展与演进

Posted: 22 Mar 2022 11:01 PM PDT

图片

论道原生的首场直播,已于 3 月 17 号顺利举行,观看直播的小伙伴纷纷留言,被讲师左手写字 + 绘画的讲解方式,炫了一脸。

图片

除了酷炫的科技感,满满的干货知识,更是让各位观看直播的小伙伴,大呼过瘾。

本期内容从容器的一个经典的部署架构讲起,详细介绍了容器网络发展演进、各种网络模式优缺点以及综合形态等内容。

感兴趣的小伙伴快来点击下方查看回放。

论道原生:「 DaoCloud 道客」叶挺-动手讲解,反手板书,图文并茂,让大家沉浸式了解《容器网络的发展与演进》#容器网络#云原生 

**视频号 

为了方便大家学习,我们根据视频内容整理了一份脑图,供大家参考。

图片

直播结束后,讲师也现身「论道原生」的微信群,为大家答疑解惑,群内气氛十分热烈,欢迎大家入群参与技术交流和讨论。

图片

注:看完回顾视频后,有任何问题都可以加群咨询

同时,我们收集了大家感兴趣的话题,统计整理了热度较高的一些话题,展示在下面,快来选出你更感兴趣的话题吧,后续将优先分享投票靠前的话题哦。

此外,非常感谢大家的建议和反馈,我们将继续为大家带来更多更好的内容。本次活动的纪念品陆续寄出中,再次感谢大家的积极参与。

希望大家每期都能有所收获,我们下期再会。

sed 查找替换字符串的用法

Posted: 22 Mar 2022 10:52 PM PDT

有几行字符串
test test keyword oldstr test test
test test test test

想要查找有 keyword 的那一行, 然后用 newstr 替换 oldstr,用下面这个命令可以执行成功

sed -i -e '/keyword/ s|oldstr|newstr|' filePath 

但是放到 shell 脚本里面就执行没效果了,不知道为啥

sed -i -e '/keyword/ s|${oldstr}|${newstr}|' filePath 

如何实现一个摄像头视频服务如果推流端挂掉,用户观看的摄像头画面不停止,而是循环播放最后 3 分钟的视频?

Posted: 22 Mar 2022 10:43 PM PDT

最近在做一个转播处理后的视频的项目。之前的帖子: https://www.v2ex.com/t/840368#reply44

现在业务上要求标题中的需求,并且无论是 [正在看直播的用户,还是刚点进页面准备看视频的用户] ,当推流端挂掉以后,看到的都是最后 3 分钟并且循环播放的视频。这样子的需求,比较好的实现方式是什么呢?目前能想到的只有缓存一个备份这个方案,不知道有没有更好的方案?

目前用的流媒体服务器是: https://github.com/ossrs/srs

flask 和 fastapi 及 bottle 如何多进程共享认证 token

Posted: 22 Mar 2022 08:33 PM PDT

如题,微信公众号小程序及支付宝这些有个服务器 token ,一般超时 7200 ,用这些 web 框架开发如何共享这个 token 呢,超时后更新了如何重新读取?

谢谢



我现在使用的方法是,直接 json 保存到本地硬盘文件里面,每次服务器调用就读取一次,判断时间,如果超时就更新并重新写入文件,感觉这样不太合理,用 sqlite 好像多个进程读取也不太合适,其他数据库也有点浪费,用 radis 是不是也有点浪费,大家有没有好办法? window 的注册表可以不?

现在接口调用量每天 12w 次吧

一个基于 fetch 的洋葱模型 http 客户端

Posted: 22 Mar 2022 07:52 PM PDT

什么是 resreq?

它是一个基于 fetch 的现代 http 客户端,因为它在内部使用洋葱模型实现,因此您可以使用中间件优雅地拦截请求和响应。

简单示例

Imgur

使用中间件

Imgur

相比 axios 等库请求响应拦截要分开写在两个函数,它的优点是使用中间件 resreq.use() 一个方法搞定,如果你使用过 koa 应该很熟悉这种套路。

项目地址

https://github.com/molvqingtai/resreq

在量子计算机普及后, RSA4096 和 Ed25519 哪个相对安全一点

Posted: 22 Mar 2022 07:37 PM PDT

windows terminal 如何使用文件名作为 tab 名称?

Posted: 22 Mar 2022 07:04 PM PDT

windows terminal 目前的体验已经足够好了,已经逐渐作为主力终端使用。不过与 macOS 上不一样的地方是,不知道如何使用文件名作为 tab 名称,这样在管理多台主机的时候会不方便。

请教一下各位前辈,有什么办法可以实现这样的需求?

如何对 Android APP 抓取 HTTPS 包?

Posted: 22 Mar 2022 06:49 PM PDT

现有一 APP ,采用 HTTPS 方式与服务器通讯,需要对该 APP 抓包获得接口。

但是现在问题如下:

  • 用主力机抓包:Android 12 ,安装证书后第三方 APP 默认不信任非系统证书,无法抓包;

  • 用备用机抓包:Android 5.1.1 ,因该接口需要先获得定位数据,而备用机定位十分缓慢,也无法抓包;

  • Android Studio Emulator:arm 架构的镜像无法启动,该应用无法安装在 x86 架构上。

因此想问问大家有什么别的好的方法吗?

为啥现在 Github 创建不了 MIT 了

Posted: 22 Mar 2022 06:23 PM PDT

晚上想用 Github 创建一个 MIT ,本来想写一个 用笨方法写轮子的,但无论怎么打开创建 MIT 打开都是 500 或者是 404

想找能一起学习的人或者一起做些小项目

Posted: 22 Mar 2022 05:11 PM PDT

本人 15 年车辆工程专业毕业。自学了两年的 Python ,18 年的时候在杭州找到一份后端的工作。由于是初创公司的老总是海归,技术选型也跟国内的不一样。国内公司要求的 MySQL 没有咋用过,用的都是 aws 的 dynamodb 和阿里云的 tablestore 。后台框架也是用的比 flask 更轻量的 falcon 框架。在工作期间自学了 galang 能做小的项目,之前的 Python 后台也用 golang 重写过。21 年 4 月份的时候因为高层内部问题公司关门了,自己也回了老家,从事传统行业。对代码的感觉还在,觉得还是想敲敲代码,期间 b 站学习了 vue 和 Java 。因为自己一个人学习感觉自己容易走偏,想问问有没有一起学习的小伙伴或者在做一些项目的朋友能带着一起做做,一起学习。

有多少人在用 winget?

Posted: 22 Mar 2022 03:38 PM PDT

各位都是如何面对自己以前写的代码的呢?

Posted: 22 Mar 2022 02:31 PM PDT

我每次打开以前写的项目都想用最新学习的框架或技术重写。感觉这样有点疲惫,但我还是开始用新学的东西重写之前的项目了。看着以前写的代码就很难受……

大家都是如果面对自己以前写的代码的呢?

jdk18 ga

Posted: 22 Mar 2022 01:49 PM PDT

https://mail.openjdk.java.net/pipermail/jdk-dev/2022-March/006458.html

https://jdk.java.net/18

Features

400: UTF-8 by Default

408: Simple Web Server

413: Code Snippets in Java API Documentation

416: Reimplement Core Reflection with Method Handles

417: Vector API (Third Incubator)

418: Internet-Address Resolution SPI

419: Foreign Function & Memory API (Second Incubator)

420: Pattern Matching for switch (Second Preview)

421: Deprecate Finalization for Removal

现在是不是几乎所有 app 都支持多设备在线了?

Posted: 22 Mar 2022 01:28 PM PDT

有两个 Android 手机,需要同时使用相同的 app ,想问下大家使用过程中有遇到哪些 app 不支持多设备在线的么?

现在 Java 转 go 有希望吗?

Posted: 22 Mar 2022 12:39 PM PDT

3 年 java 开发,成都 java 太倦了,现在想转 go ,自学一年能找到工作吗

22.04 起, firefox 只提供 snap 包了

Posted: 22 Mar 2022 12:22 PM PDT

目前 snap 没有国内镜像,下载只有 20mpbs(2.5M),网速一夜回到 2010 年

No comments:

Post a Comment