V2EX - 技术 |
- 2021 年下半年后端开发求推荐合适的笔记本
- 34 岁程序员, 今天去面试, 还是有点紧张的
- mongo 如何对比一个文档的更改?
- Android 保活黑科技
- 为何前端构建工具这么麻烦
- Go 成功让我实现了人格分裂
- 各位,请问现在用 elasticsearch 的哪个版本好? 7.x 还是 6.x
- 被静默推送了臭名昭著的 Chrome Privacy Sandbox,大家都关了吗?
- 求一个 iOS SwiftUI 课程: 哪位能推荐一个用 SwiftUI 做一个抖音 app 这样的课程?
- 阿里云退款不原路返回也就算了,提现竟然至少要 10 天以上,引以为戒
- 如何知道自己适合前端开发还是后端开发
- 异形屏的时代终于要过去了吗?
- 搬家后换了个网络 申请了公网 IP, nas 内网穿透得速度居然变慢了,这是为啥,,
- 用 Go 轻松完成一个 TCC 分布式事务,保姆级教程
- 培训机构 以阿里之名 剽窃我 Android 文章
- 请问一下大家有没有推荐的 go markdown 相关转换库
- 请问哪里有网闸程序源码?
- 用 goframe 框架的朋友们,后台你们都用什么框架呢?
- HTML5 网页录音开源库,小巧功能丰富,欢迎把玩
- 发现群晖 dsm7.0 的 photo,无论是 web 版还是 app 版,均不支持杜比视界的视频播放
- Golang 写桌面 GUI 应用的体验
- windows10/11 怎么让文件资源管理器里能按所有文件/文件夹混合排序,而不是文件和文件夹单独排序?
- 请问大佬,国内人工智能在专业领域应用如何?
- [开源] 基于微信机器人的 ToDoList
- 多列表格的数据结构设计
- 构建指北 #10 Android 开发工具兼容性/版本搭配
- 之前看 v 友的帖子,本想证明 centos 比 freebsd 弱不了多少,没想到引出 ubuntu server 20.04 成为黑马
- 特定领域算法从业人员的前景
- 大佬们,快来帮帮我看一下我设备是不是被黑了,人在外地设备在家里,现在慌的一笔 没见过这种场面
- 收到了有关 Google Plus 集体诉讼的赔偿款
- 企业微信后台这个静默下载的是什么啊?
Posted: 09 Aug 2021 04:17 AM PDT 当前需求:
备注:
|
Posted: 09 Aug 2021 04:12 AM PDT 34 岁程序员,6 年没有面试过了,今天去面试, 还是有点紧张的 |
Posted: 09 Aug 2021 04:10 AM PDT 各位大佬,mongo 如何对比一个文档改了哪些字端?更改了哪些值? 比如 a = {'name': 'zz', 'age': 18, 'scope': [1,2,3]} 更改为了 a = {'name': 'zzz', 'age': 28, 'scope': [4,5,6]} 如何接口判断到哪个值变换了 |
Posted: 09 Aug 2021 03:51 AM PDT 有没有要做 Android App 保活功能的老板和开发者啊,接入我的 sdk,实现 Android 保活,App 就再也杀不死啦,具有永生能力。增加更多运营的可能,实现更多赚钱的机会。 本 sdk 优势: 1 、保活能力优秀,app 杀不死 2 、极端情况下 app 被杀死后可以起死回生 3 、app 可以开机自启 https://www.duiyou360.com/service/detail/202108091027188278669107?utm_source=sharea |
Posted: 09 Aug 2021 03:48 AM PDT 被 webpack 整晕的一天。想问问后端构建工具是不是很方便🌚🌚 |
Posted: 09 Aug 2021 03:41 AM PDT 从开发者的角度,非常讨厌 Go 语言的语法,极其讨厌,所以至今不愿意去学,也不愿意去用,新项目宁愿守着 java 、kt 。 从使用者的角度,非常喜欢 Go 语言开发的各种软件,非常喜欢,零依赖的一个 binary 太他妈的好用了。 Go 这坨屎真的让我很纠结很矛盾。 |
各位,请问现在用 elasticsearch 的哪个版本好? 7.x 还是 6.x Posted: 09 Aug 2021 03:40 AM PDT 如题,随便问下 elasticsearch 文档哪里看比较好,有没有最新版中文的?官网不翻墙的情况下,打开是在太慢了。感谢~ |
被静默推送了臭名昭著的 Chrome Privacy Sandbox,大家都关了吗? Posted: 09 Aug 2021 03:29 AM PDT 真的恶心,坐标海外,默默的就给推送然后自动开启了。 美其名曰屏蔽 tracking cookie,实际就是一个官方的后门收集个人爱好然后分享给有合作的广告商。 这个推送是默认开启状态,而且完全没有任何的提示 /通知,Google 这样真的吃相难看。 |
求一个 iOS SwiftUI 课程: 哪位能推荐一个用 SwiftUI 做一个抖音 app 这样的课程? Posted: 09 Aug 2021 03:17 AM PDT 找了一圈,没找到合适的 收费免费都可以 |
阿里云退款不原路返回也就算了,提现竟然至少要 10 天以上,引以为戒 Posted: 09 Aug 2021 03:14 AM PDT "指定账号提现原则上也要遵循原路退回,需要您提交相关资料(原付款凭证,销户证明等),小二人工复核后提现到账,预计 10-15 天;"------ 快赶上域名备案的时间了,转人工客服如果是退订类的,连真人都不分配给你,只生成一个工单让你慢慢等 阿里云的网页永远是这么卡,塞了一堆东西,幸好可以退坑了,把能迁移的都迁出去 |
Posted: 09 Aug 2021 03:11 AM PDT 在校生,人工智能专业,不过自己对人工智能兴趣不大,还是想做研发岗。比较迷茫以后工作是做前端还是后端,没有项目经历,对于二者没有清晰的认识,希望大家给予一些指导。 |
Posted: 09 Aug 2021 03:03 AM PDT MIX4 使用了屏下镜头技术,正面是一块完整的屏幕。等到明年应该会有更多的手机使用这一技术吧 |
搬家后换了个网络 申请了公网 IP, nas 内网穿透得速度居然变慢了,这是为啥,, Posted: 09 Aug 2021 02:49 AM PDT |
Posted: 09 Aug 2021 02:39 AM PDT 什么是 TCC,TCC 是 Try 、Confirm 、Cancel 三个词语的缩写,最早是由 Pat Helland 于 2007 年发表的一篇名为《 Life beyond Distributed Transactions:an Apostate's Opinion 》的论文提出。 TCC 组成TCC 分为 3 个阶段
TCC 分布式事务里,有 3 个角色,与经典的 XA 分布式事务一样:
如果我们要进行一个类似于银行跨行转账的业务,转出( TransOut )和转入( TransIn )分别在不同的微服务里,一个成功完成的 TCC 事务典型的时序图如下: TCC 网络异常TCC 在整个全局事务的过程中,可能发生各类网络异常情况,典型的是空回滚、幂等、悬挂,由于 TCC 的异常情况,和 SAGA 、可靠消息等事务模式有相近的地方,因此我们把所有异常的解决方案统统放在这篇文章《还被分布式事务的网络异常困扰吗?一个函数调用帮你搞定它》进行讲解 TCC 实践对于前面的跨行转账操作,最简单的做法是,在 Try 阶段调整余额,在 Cancel 阶段反向调整余额,Confirm 阶段则空操作。这么做带来的问题是,如果 A 扣款成功,金额转入 B 失败,最后回滚,把 A 的余额调整为初始值。在这个过程中如果 A 发现自己的余额被扣减了,但是收款方 B 迟迟没有收到余额,那么会对 A 造成困扰。 更好的做法是,Try 阶段冻结 A 转账的金额,Confirm 进行实际的扣款,Cancel 进行资金解冻,这样用户在任何一个阶段,看到的数据都是清晰明了的。 下面我们进行一个 TCC 事务的具体开发 目前可用于 TCC 的开源框架,主要为 Java 语言,其中以 seata 为代表。我们的例子采用 go 语言,使用的分布式事务框架为https://github.com/yedf/dtm,它对分布式事务的支持非常优雅。下面来详细讲解 TCC 的组成 我们首先创建两张表,一张是用户余额表,一张是冻结资金表,建表语句如下: trading 表中,trading_balance 记录正在交易的金额。 我们先编写核心代码,冻结 /解冻资金操作,会检查约束 balance+trading_balance >= 0,如果约束不成立,执行失败 然后是调整余额 下面我们来编写具体的 Try/Confirm/Cancel 的处理函数 到此各个子事务的处理函数已经 OK 了,然后是开启 TCC 事务,进行分支调用 至此,一个完整的 TCC 分布式事务编写完成。 如果您想要完整运行一个成功的示例,那么按照 dtm 项目的说明搭建好环境之后,运行下面命令运行 tcc 的例子即可
TCC 的回滚假如银行将金额准备转入用户 2 时,发现用户 2 的账户异常,返回失败,会怎么样?我们修改代码,模拟这种情况: 这是事务失败交互的时序图 这个跟成功的 TCC 差别就在于,当某个子事务返回失败后,后续就回滚全局事务,调用各个子事务的 Cancel 操作,保证全局事务全部回滚。 小结在这篇文章里,我们介绍了 TCC 的理论知识,也通过一个例子,完整给出了编写一个 TCC 事务的过程,涵盖了正常成功完成,以及成功回滚的情况。相信读者通过这边文章,对 TCC 已经有了深入的理解。 关于分布式事务中需要处理的幂等、悬挂、空补偿,请参考另一篇文章:分布式事务你不能不知的坑,一个函数调用帮你搞定它 关于分布式事务更多更全面的知识,请参考分布式事务最经典的七种解决方案 文中使用的例子节选自yedf/dtm,支持多种事务模式:TCC 、SAGA 、XA 、事务消息 跨语言支持,已支持 golang 、python 、PHP 、nodejs 等语言的客户端。提供子事务屏障功能,优雅解决幂等、悬挂、空补偿等问题。 阅读完此篇干货,欢迎大家访问https://github.com/yedf/dtm项目,给颗星星支持! |
Posted: 09 Aug 2021 02:31 AM PDT 某培训机构,未经授权,私自剽窃我 Android 文章的前言,在其基础上添加 "阿里" 两字,用作公众号软文, 我已和涉事文案人员沟通,但目前未得到正面回应,先在此留个标记, 此外如对 "业务架构"、"Android 基础进阶" 感兴趣,大可自行爬坑、查阅官网、运行 GitHub 热门项目的方式来学习掌握,任何教程都无法代替自己亲自走一遍。 |
请问一下大家有没有推荐的 go markdown 相关转换库 Posted: 09 Aug 2021 01:23 AM PDT 如题,需求是将一段普通的文本按照样式生成 markdown 语法的文本,涉及标题大小、字体颜色、插入链接和表格绘制等操作。本来打算自己封装一下就好,但是要画表格感觉工作量突增了。。自行搜索了一下没发现相关的工具(可能是我姿势不对),想问问各位 V 友有没有推荐的呢,非常感谢:) |
Posted: 09 Aug 2021 12:57 AM PDT 最近公司要搞一个网闸程序, 在网上搜了很多只有网闸的方案介绍, 很少有网闸程序, 想问下各位大佬, 哪里有网闸程序源码可以供参考的, 谢谢! |
Posted: 09 Aug 2021 12:45 AM PDT github 上好像就一个 gf-vue-admin,有人用过吗?怎么样?我自己用过他的 gin-vue-admin 还行。 难道都是用 element admin 自己写权限系统吗? |
Posted: 09 Aug 2021 12:41 AM PDT 得益于 WebRTC 的标准化推进,今年越来越多的浏览器已经能够进行 H5 录音。 去年折腾的要死的各种国产套壳浏览器今年已经有了非常大的改善,包括折腾到吐的 iOS 也已经不那么傲娇了终于放开了 App 里面的限制,基本上只要升级了浏览器或系统就能使用 H5 的录音功能。 开源库: https://github.com/xiangyuecn/Recorder 测试: https://xiangyuecn.gitee.io/recorder/ 这个库是很久以前写的一个网页版录音插件,经过几年的优化更新、功能添加,现在算是一个比较完整好用的 H5 录音开源解决方案了。 目前已经提供了:mp3 、wav 、pcm 、ogg 、webm 、amr 录音格式的支持,当前最新的 wav 格式录音的 js min 文件 9.73kb,小巧精致,mp3 的 js 文件 153kb (理论上只要能提供编码器,任何音频格式都能很方便的进行扩展支持) 库里面带有丰富的扩展功能插件,包括好几个音频可视化插件、变速变调处理、还带了一个 DTMF 编码解码插件。 支持实时处理,可以做到边录音边处理、边录音边上传;除了可以实时处理麦克风录制的音频流外,其他的音频流均能处理,包括但不限于:getUserMedia 返回的流、WebRTC 中的 remote 流、audio 、video 标签的 captureStream 方法返回的流、自己创建的流 等等;另外提供了对音频数据的实时播放功能。 |
发现群晖 dsm7.0 的 photo,无论是 web 版还是 app 版,均不支持杜比视界的视频播放 Posted: 09 Aug 2021 12:32 AM PDT 具体效果是跳帧+花屏。但很奇怪的是个别的杜比视界的视频并不花屏。 这导致 iphone 12 pro max 拍摄的视频不能通过 photo 在自身、ipad 、pc 等设备回放(用视频播放器、或 IOS 自带的"照片"应用可以) 不知道各位有没有什么在保留杜比视界规格的前提下,改进体验的方法。 |
Posted: 08 Aug 2021 11:41 PM PDT 之前闲着无事,用 Go 的一个开源 GUI 库 fyne 撸了一个小工具,就是一个通过抓取虎牙直播源地址,并且调用本地的播放器比如 MPV 看直播的东西。 刚开始,觉得 Go 写 GUI 还挺有意思,但是写着写着发现想实现一个稍微复杂的 UI 和交互,真的很难。。。fyne 这个库本身的自带的组件功能很少,简单东西可以搞一搞,稍微复杂点无能为力了。 后来又去看了看一个 QT 绑定库 therecipe/qt,以前没用过 qt,发现这个库贼难用,一个方法点进去连注释都没有,全是 rpc 调用,我都看懵了,找了下 QT 的文档,全是 C++的写法,和这个库的调用又不是完全一样的,折腾了一下,看了那一些 example,又是 QML 啥的,搞蒙了,总结就是发现没法用,除非你以前就会 QT 这一套东西另说。 总结,Go 在开发桌面 GUI 应用这块依然是个玩具,自娱自乐玩一玩可以。。。桌面原生 GUI 开发还得看 C++啊 |
windows10/11 怎么让文件资源管理器里能按所有文件/文件夹混合排序,而不是文件和文件夹单独排序? Posted: 08 Aug 2021 10:58 PM PDT |
Posted: 08 Aug 2021 10:38 PM PDT 前段时间看到,美国通过 AI (一张 3080 显卡),预测蛋白质结构,在效率和能效上比传统方法高 5 个数量级,太可怕了吧 国内这方面,我看到的最多新闻就是自动驾驶,语言翻译,老片重置这方面民用的应用. 这方面中美哪个领先? |
Posted: 08 Aug 2021 09:59 PM PDT 我是一个很懒的人, 基本不维护任何笔记。一直用一个在线文档(最近是 flomo )存放 ToDoList,需要查看的时候打开。 打开频率基本看心情, 隔断时间没维护就另起一份新的 ToDoList 。不知道大家是用什么办法维护自己的 ToDoList 。 PushTodo 基于微信机器人每天推送 ToDoList 到个人微信上, 确保我这种懒人每天都能看一下 ToDoList 。 目前功能比较简单, 就是一个文本框。 每日 0 点推送 ROADMAP
欢迎体验和提意见。 |
Posted: 08 Aug 2021 08:50 PM PDT 现有一表格,4 列,要能通过前三列找到对应第 4 列的值。应该如何设计数据结构? 4 列都为 int 型 |
Posted: 08 Aug 2021 08:15 PM PDT 『构建指北』是探索 Android 构建相关的一系列文章,涵盖了 Gradle 、Android Gradle Plugin 、Kotlin Script 等工具,以及相关架构上的应用。 由于几个月前电脑 CPU 烧了,被迫换了 M1 的 Mac Mini,所以整个开发环境重新搭建了一遍。趁这个机会,我想整理几个基础工具的版本搭配策略、兼容性、以及在 M1 芯片上的表现。对于版本搭配和兼容性的一些讨论不局限于当前使用的版本和平台。 下方提及的版本分别是:
JDK自 AGP 7.0 起,JDK 11 便是最低要求。JDK 11 成为 LTS ( Long-term Support) 版本已经有将近 3 年历史( Sep 2018 ),自身经历了 12 个小版本( 11.0.12 )的迭代目前相对成熟了。作为对比,上一个 LTS 的 JDK 8 2014 年发布,已经陪着我们走过了 7 年时光和 300 个小版本迭代。事实上作为 Android 开发者,即便目前项目是 Java 为主的情况,一般 Language Level 也仅 target to 1.8 (一些 9-12 的特性 D8 、R8 有支持,Android 11 12 也有融入)。Android 官方虽然说不会放弃 Java,但实际上对 Kotlin 的支持确实更给力。 从这个角度来看,JDK 11 带来给我们的更多是:
而 JDK 的升级策略我认为是:
在 M1 Mac 上,由于 Oracle 还未有的 ARM64 版本,所以目前主流的做法是安装 Azul 维护的 需要注意的是,常用的 JDK 管理工具 KotlinKotlin 的版本搭配限制相对不多,一般我考虑三个点:
关于最后一点,如果使用的 Kotlin 版本和 Gradle bundle 的不一致,会出现如下 Warning:
用一个简单的例子看下问题是怎么发生的: 解决起来也很简单: Kotlin 官方的文档直接就演示了加版本号的写法。但是,这个版本是 Kotlin 基于 Gradle 测试通过,而 Gradle 自身还没有基于它测试过并打包进去(见 Gradle 部分的配图),若出现了问题可能难以解决: 所以我推荐的升级策略是:
Gradle前面提到 Kotlin 的官方文档解释了各类和 Gradle 配合兼容的情况,反过来 Gradle 这边也有一个标明了 Java 、Kotlin 、Android 等各语言和平台的支持文档。 像前面提到的 Java 版本支持,Kotlin 版本支持在这里便一目了然。除了 Kotlin 的支持会稍落后一两个月,其他工具的最新版本兼容都不成问题。而 Gradle 自身的向下兼容我觉得还不错,我基本上每个版本都升级。而上层的 AGP DSL,特别是老版本,则挺经常有大改动(好在 7.0 后终于强多了)。 所以我推荐的升级策略是:
另外,Gradle 7.0 后的版本原生支持了 M1,我个人的使用体验还不错。 Android Gradle PluginAGP 的版本搭配限制我们在前面基本都介绍完了,以 7.0 为例,我们来看官方 Release Note 的兼容说明: 额外补充一点:从 AGP 7.0 起,其版本会同步 Gradle 的 major 版本,严格遵守 Semantic Versioning 体系(之前同步的是 AS 的版本)。也即 AGP 7.x 会适配 Gradle 7.x 的版本。不过 AGP 的发布时间依旧是随着 AS 一起发布,并且目前来看其 alpha/beta 的数字是跟随 AS 的,所以其实可以当成三者形成了某种默契的同步机制。 所以我推荐的升级策略是:
Android StudioAS 基本上没有什么搭配限制,只要你用的之前正式版的 AGP,AS 就可以向下兼容。我推荐的升级策略是:
另外,由于 AS 基于的 IDEA 社区版二次开发,整体稳定性、新特性支持的速度都不如 IDEA Ultimate,例如 Gradle 的 nesting Composite Build 目前就不在 AS 支持范围,见该 issue。 最后,自 Arctic Fox 2020.3.1 起,AS 原生支持了 M1,但如果想有更流畅的体验,我认为 BumbleBee 2021.1.1 Canary 效果更好一些。 IDEAIDEA 的主要搭配限制来自于 Android Plugin ( Android IDE 插件)的版本适配。一般来说,在 AS 新的正式版本发布之后,下一个 IDEA 的正式版本就会带上该新版插件,从而对 Android 开发包括 AGP 做支持。 偶尔也有等比较久的时候,比如今年 AS&AGP 4.2 在 4 月发布,而直到 7 月 IDEA 2021.2 发布时,才更新了 Android Plugin,官方的说法是 Google 放出 AGP 4.2 的源码时间晚了些,导致没赶上 2021.1 的版本。 我推荐的升级策略是:
最后,2021.2 也是让我在 M1 感觉终于不再有什么卡顿的版本了。 总结我自己由于使用 M1 的平台 + 适配一些 Gradle Plugin,经常会使用 beta 甚至 alpha 的 AGP (作为 Runtime 的 library ),配合最新的 IDEA Ultimate 开发起来还是挺顺手。 而公司项目,现阶段 x86 平台我觉得可以使用如下配置,ARM M1 则根据上文调整对应的工具版本:
(欢迎订阅"Android 高效开发"↑) |
之前看 v 友的帖子,本想证明 centos 比 freebsd 弱不了多少,没想到引出 ubuntu server 20.04 成为黑马 Posted: 08 Aug 2021 06:46 PM PDT 之前的 v 友的帖子: https://v2ex.com/t/782948 本想证明 centos 没有那么弱,是不是测试的配置有问题。周末花了 2 天自己测试,最后发现 freebsd13 强者如斯,同时 ubuntu server 20.04 黑马杀出,或者是 debian11 的功劳? 压测的系统:freebsd13, ubuntu20.04, debian10, centos 8 stream, rocky linux 8 |
Posted: 08 Aug 2021 03:13 PM PDT 比如现在研究计算机视觉的人非常多。如果以后这方面的需求减少,该领域的从业人员怎么办呢? IT 历史上有没有类似的经验呢? 我要读研了,想到这个问题情绪就比较低落。(我不是做计算机视觉的) |
大佬们,快来帮帮我看一下我设备是不是被黑了,人在外地设备在家里,现在慌的一笔 没见过这种场面 Posted: 08 Aug 2021 03:08 PM PDT 电脑大概开了一个星期了 没关机,偶尔要远程回家里,开机的设备是 mac 和 win,win 用的是虚拟机 映射了一个外网端口 3899 默认端口到 win 虚拟机,今天下午突然显示 win 被锁了。用的是这个软件: https://www.appinn.com/clearlock/ 然后我赶紧远程我的 mac 显示电脑密码不正确, 能做到只通过网络修改 mac 的开机密码吗?现在 win 虚拟机和 mac 在同一个内网。 刚刚试了一下我的 openwrt 密码也错误了,可是我的 openwrt 弄的比较复杂的密码,有特俗符号大小写和数字。并且没有记住过密码,至少在 mac 上没有,win 虚拟机不记得有没有了 现在我人回不去家里 慌的一笔。怎么办啊 |
Posted: 08 Aug 2021 11:41 AM PDT 去年 8 月收到了 Google Plus 集体诉讼和解相关的 Email,就随手填了一个表提交了,没想到真的收到了 2.15 刀。我差点都忘了还有这回事了。 |
Posted: 08 Aug 2021 09:12 AM PDT |
You are subscribed to email updates from V2EX - 技术. To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google, 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States |
No comments:
Post a Comment