月度归档: 2021 年 3 月

“出彩”可信云,京东云创新归来!

如今,火热的容器技术已然成为传统基于管理程序虚拟化的一种实力替代品。

业界普遍认为,容器与传统的虚拟机相比,在启动速度、体积、应用和生态等诸多方面确实表现不俗。

毕竟容器足够轻载而且可以提供增强的可移植性,高效应用在移动平台之间完全不用返工或者让应用程序的开发者再重新设计。

当然这种易用性也在相关数据中得到了印证。

有关数据显示,随着容器技术的普及,接近一半的企业受访者表示目前正在使用容器。

其中占比40%的企业只使用容器进行测试和开发,另外60%甚至会同时选择将其用于生产。

之所以选择容器,企业主要考量的还是其表现出来的高扩展性以及可以简化并加速测试的功能。

容器技术“不俗的表现”除了引起行业的高度关注外,同时也被当作可信云评估的重要技术方向而提上日程。

%title插图%num

据了解,可信云评估作为国内高度认可的云计算标准和评估方法,是衡量云服务技术能力和服务水平的重要标准,如果企业获得可信云大会*项,也意味着是对其服务能力及技术创新能力的高度认可。

而云计算行业后发者京东云在近日刚刚召开的可信云大会上斩获“容器虚拟化”技术创新*,备受业界关注。

%title插图%num

放眼如今巨头林立的云服务市场,京东云入局并不算早,但却可以被视作进步快速的云服务商之一。不但爆出战略投资EasyStack,将在云计算、分布式存储、容器三大开源技术领域进行合作的重头新闻,其针对容器服务的探索更是技术能力创新的*好展现。

总体来说,京东云容器服务基于其在容器方面的的技术积累,同时融合了容器与虚拟机的双重优势,高度整合了存储、网络、安全等整体服务。

提供的容器服务不但无需管理虚拟机或集群,还可以做到快速部署以及弹性扩展,在保证安全、易用、全面几个重要指标的基础上计费模式更加精细化,对降低成本助力巨大。

据悉,不久之前京东云刚刚推出了完全托管的Kubernetes集群服务,“高可用性”是其显著特征。

具体来说,在京东云上可以通过全自动的方式完成跨区域的节点部署以及管理,同时还支持不同地域的数据中心节点的均衡部署,且为自动部署。

更重要的一点,京东云的Kubernetes集群可同时支持Serverless模式和非Serverless模式。不用考虑节点自身的复杂性,像原生容器一样调动所有API,无论是在创建环节还是调度上都确保*大的灵活可用性。

在这样深厚的技术积累之下,面对企业普遍反映的调度效率带来的成本提升以及诸多管理与规划的问题,京东云容器服务采用在hypervisors上直接运行Docker镜像,充分融合Docker容器和虚拟化的优点,既简化了平台复杂度又提高了性能和可靠性。

其中的独立内核技术,以虚拟机的隔离性为基础,避免容器间共享内核的安全隐患,同时凭借SDN技术实现不同租户实现完全隔离。

此外,由于集成了京东云VPC,服务可以通过安全组、网络ACL设置更细粒度的网络访问权限、提供基础的DDoS防护功能,哪怕是在同一私有网络中实现容器实例与公有云计算、存储、网络等资源内网互通,也可以充分利用产品资源。

%title插图%num

由于京东云容器服务的技术特性,无论是微服务架构还是持续集成与部署都妥妥的适用。

具体来看,微服务架构将传统分布式服务继续拆分解耦,形成一些更小服务模块,服务模块之间独立部署升级,所以容器特性非常适用于微服务架构部署。

例如,每个容器中可以运行完全不同的镜像服务,容器启动后就会产生了一个独立的微服务主机节点,还可以直接将云平台提供的各种云服务与自定义的微服务整合成一个强大完整的服务集群。

此外,使用京东云容器服务,开发人员在提交新代码后,可立即开始构建、测试应用,测试通过后还可以随时将新版本镜像更新到线上并完成服务升级。

整个过程全自动化,*大程度地简化了运维成本,而且保证线上、线下环境完全一致。通过持续集成与持续交付提供的优秀的DevOps环境,*大提高软件发布效率,十分顺应行业内的敏捷开发要求。

京东云容器服务不但实现了基于虚拟化的底层强隔离,还同时保留了容器的轻量级特性,可谓是集高性能、便捷性、高可用性于一身。

此次可信云大会上,京东云不但凭借“容器虚拟化技术”获得可信云评估的高度认可,还通过“数据库技术”摘得了存储类的技术创新*。

据了解,京东云分布式关系型数据库DRDS将拆分解决单机数据库容量无法满足业务需求的问题,通过事件驱动的多路复用模型外加把压力,打散到多个RDS实例上,从而解决单机数据库性能无法满足业务需求的困难。

通过实时备份解决数据高可靠,让DRDS与RDS融合支持用户快速便捷搭建分布式数据库服务以及落地两地三中心方案,提升用户的开发效率以及降低运维成本。

%title插图%num

据悉,DRDS完全兼容MySQL的传输协议,用户可以快速便捷的从原生MySQL切换至DRDS服务,以*低的代价分钟级搭建一整套高性能高并发的分布式数据库解决方案,该服务尤其支撑了京东内部众多核心0级系统在618及双11的考验。

除了技术领域的创新成绩,依托自身“政务云解决方案”,京东云还助力宿迁市电子政务办公室荣获了“可信云十大用户*”,以京东云公有云以及自建私有云的混合云模式为基础而建成的市级政务云平台有效助力宿迁实现了“云端发展”。

有数据显示,此次获*的宿迁市政务云平台已完成迁移上云146个,上云率达95.4%。其中政务服务网、公积金系统、市政府门户网站群、居民信用积分平台等核心系统均稳定运行其上。

除了“宿迁政务云”典型项目之外,京东云目前已在多达15个城市进行了智能城市布局,通过“政务云”建设等形式为各地赋能。

%title插图%num

其中,京东云政务云以城市新经济合伙人的身份出发深耕本地服务市场,从城市需求入手,通过技术赋能将京东云计算、大数据、AI、物联网、移动互联网等技术能力整体输出。

如今京东云进入“申元庆时间”,势头猛烈。他表示:“此次京东云获得可信云大会的*项,表明了业界对京东云技术能力以及政务云解决方案的认可和肯定。一直以来,京东云致力为用户提供安全、稳定的云计算服务并在技术方面努力创新;同时也希望通过自身云计算的技术赋能,助力智能城市的发展。”

目前京东云已经拥有108个云计算产品和服务,能够提供IaaS、PaaS、SaaS全栈式云服务,未来还将继续夯实自身的技术能力,开启属于自己的“云加速计划”。
————————————————

原文链接:https://blog.csdn.net/sch881226/article/details/81703830

python

python

***python习题##***
问题
已知列表data中有若干字符串,要求编写程序,对data中的字符串进行过滤,只输出重复字符不超过一半的字符串。

提示:以下是本篇文章正文内容,下面案例可供参考

一、分析
键盘输入字符串后需要使用split()来进行分割操作
需要引入collections中的Counter来方便计数
通过for循环来对字符串计数
通过if语句找出每个字符串中字母重复*多的
字母重复*多的那个字母重复的个数与该字符串长度进行比较决定要不要输出该字符串
二、步骤
1.引入库中方法
代码如下(示例):

from collections import Counter #导入Counter
1
2.键盘输入数据
代码如下(示例):

print(“输入字符串”)
data=input() #手动输入
datalist=data.split(“,”) #分割字符串
data=datalist
print(data) #输出字符串列表

代码
from collections import Counter #导入Counter
print(“输入字符串”)
data=input() #手动输入
datalist=data.split(“,”) #分割字符串
#print(datalist)
data=datalist
#data=[‘Hello’,’World’,’python’,’aaabbb’,’cccdd’]
print(data) #输出字符串列表
for i in data: #for循环
a=Counter(i) #对列表中每一个字符串进行计数
#print(Counter(i))
maxlen=0
for j in a:
#print(key,a[j]) #输出的是字母和个数,例如 “all” 输出 a 1 l 2
if maxlen< a[j]:
maxlen= a[j] #得到字符串中字母重复*多的
#print(maxlen) #输出重复数量
if maxlen <= len(i)/2: #重复*多的字母的重复个数与该字符长度比较,没有超过一半则输出该字符串
print(i)

%title插图%num

不遵循 restful_api 设计,所有的 api 使用 POST 提交

GET ( SELECT ):从服务器取出资源(一项或多项)。
POST ( CREATE ):在服务器新建一个资源。
PUT ( UPDATE ):在服务器更新资源(客户端提供改变后的完整资源)。
PATCH ( UPDATE ):在服务器更新资源(客户端提供改变的属性)。
DELETE ( DELETE ):从服务器删除资源。
把所有的 API 都设计为 POST 提交方式,你们是如何看待的。

ieiayaobb 2019-08-26 14:37:22 +08:00
当 GET 超过了 URL 限制,只能用 POST 替代
qq292382270 2
qq292382270 2019-08-26 14:43:29 +08:00
我觉得挺好的. 因为我的客户大部分只会 post .
mokeyjay 3
mokeyjay 2019-08-26 14:48:46 +08:00
没啥好看待的,有些人只知道获取资源用 GET,其他所有情况用 POST
至于用这种还是用 restful 看具体情况谁话语权大了
Cyron 4
Cyron 2019-08-26 14:50:37 +08:00
无所谓,文档写好就行了
wingoo 5
wingoo 2019-08-26 14:52:24 +08:00 ❤️ 1
restful 并不是标准, 不用就会出错
hnbcinfo 6
hnbcinfo 2019-08-26 14:53:20 +08:00
严格遵循 restful 我觉得不现实,也不一定就好。我一般就用 Get Post。读操作 get,写操作 post,当然也会偶尔有例外。只要文档写好,有一套规则,别随便用就好。
rockyou12 7
rockyou12 2019-08-26 14:55:32 +08:00 ❤️ 1
远古时代,http 的 get 请求会被各种服务商做缓存,所以请求都用 post 还算合理的设计。现在反正都 https 了,不存在了
mcfog 8
mcfog 2019-08-26 15:02:51 +08:00 ❤️ 1
不如何看待,工作那么多年了就没见过纯按标准来的 PATCH 或者 PUT 方法的接口

顺便,楼主你的理解也并不准确,PUT 同样适用于新增
learnshare 9
learnshare 2019-08-26 15:03:04 +08:00
没有*佳实践,不专业才是正常的,多数上层应用不遵守协议也能凑合运行嘛

@rockyou12 也不知道谁遇到过这个问题,并把他的垃圾经验推广开了
ikaiguang 10
ikaiguang 2019-08-26 15:30:42 +08:00
@mcfog

嗯呢。上面的理解,摘自“ 阮一峰”的。

ikaiguang 2019-08-26 15:32:50 +08:00
@Cyron
@qq292382270

我们的项目都是 post,不使用 get.

为了贪图方便
est 12
est 2019-08-26 15:49:10 +08:00 ❤️ 1
挺好的。

real world 如果只能用这 5 种方式操作资源简直是智障设定。比如我登出操作,如何对应这 5 种资源操作?
mcfog 13
mcfog 2019-08-26 15:53:18 +08:00 via Android
@est 可以当然是可以的,虚拟资源虚拟万物即可
DELETE /session/current 或者 /session/:sid
baiyi 14
baiyi 2019-08-26 16:10:24 +08:00 ❤️ 2
不赞成所有的 API 都是用 POST

但同样不赞成将 HTTP 方法对应 CRUD,例如说 POST:确实有“创建新资源”的语义,但是它还有“向数据处理过程提交数据块”的语义,这个“ data-handling process ”描述的太模糊了,所以 POST 方法完全可以替代 PUT、DELETE、PATCH,就像 HTML 的 form 标签,只支持 GET、POST,也完全符合语义的。在《 RESTful Web APIs 》这本书里叫它“ whatever ”……

所以我个人更倾向于用业务逻辑的安全性、幂等性来定义 API 该是用哪种方法。

举个例子:转账,使用 CRUD 就很难去对应,有的可能会用 PUT,因为修改了两个账户的余额信息,有的用 POST,但可能是强行将主体对象从账户转为转账记录这样的资源上,就会让人感觉很混乱。

但如果使用幂等性来判断就很简单,PUT 幂等,POST 不幂等,那转账,肯定是不幂等的。按照这个思路换个例子:修改用户余额,可能这样的场景比较少,但主要是为了说明。这个就应该使用 PUT,应为它是幂等的。
beyond99 15
beyond99 2019-08-26 16:18:21 +08:00
@mcfog 这种为了 restful 而 restful 的方式有什么意义?只会让接口更难懂
baiyi 16
baiyi 2019-08-26 16:23:35 +08:00
@mcfog #13 不建议这样构建资源

对于用户来说,POST “/user/logout ” 比 DELETE “/session ” 更容易理解,用户需要额外的去理解 session 这个资源的意义
ArJun 17
ArJun 2019-08-26 16:28:44 +08:00
所谓的规矩就是用来打破的,且意义上的 restful 都用 POSt 请求方式并没有什么影响
wu67 18
wu67 2019-08-26 16:46:27 +08:00
post 没什么毛病啊. 上面也说了 get 会被缓存, 这是其一; 统一 post 的话, 前端 /客户端封装请求方法也简洁很多, 不会出现 新来的菜鸡实习生搞不清楚为什么出错到处发问(笑) 的情况…
hmzt 19
hmzt 2019-08-26 16:54:22 +08:00
挺方便的,甚至一开始就不该设计那么复杂
Vegetable 20
Vegetable 2019-08-26 17:12:11 +08:00 ❤️ 1
挺方便的,信息更集中,通过 json 传递的参数带基本类型,减少犯错空间.比如 querystring 的 a=1&a=2 这种设计,很容易让新手犯错.

你可能觉得不遵守规范是不对的,实际上这就是一种权衡,严格遵守 restful 很难,复杂业务下,只要有一份规则,大家共同遵守就可以,没有圣经.
Cyron 21
Cyron 2019-08-26 17:16:03 +08:00
@ikaiguang #11 json api 全用 post 也没问题,时间可以花在命名规范上
westoy 22
westoy 2019-08-26 17:20:54 +08:00
还有就是跨浏览器和避开一些防火墙对 delete、patch、put 的阻断, 你永远不知道真实世界里会出啥妖蛾子

框架里*早提倡 REST 实践的是 rails 2 吧, 但是貌似直到现在 rails 都是通过 POST 传_method 字段来做的
nnqijiu 23
nnqijiu 2019-08-26 17:29:49 +08:00
都用 post
otakustay 24
otakustay 2019-08-26 17:49:28 +08:00
总比都用 GET 好,对吧
est 25
est 2019-08-26 18:06:42 +08:00
@mcfog 那带 CAPTCHA、2FA 的登入呢?

验证邮箱的 API 呢?

明明一个 资源名字 + 动词就能描述很清晰的东西,非得限定只用 5 个 verb 去套。。这是削足适履。

而且正规的 RESTful 还要区分单数复数的。。这个就是个笑话。章鱼有 3 种复数形式。做 log 统计的时候就想把 RESTful 作者砍死。

对了 RESTful 作者的发明其实就是 Adobe CodeFusion 没啥值得吹的。而且 RESTful *好的应用也就 WebDAV 了。协议来说其实设计出发点听起来不错,用起来各种问题。性能也不高。
mayne95 26
mayne95 2019-08-26 18:09:34 +08:00 via Android ❤️ 2
谢邀(并没有)
既然楼主用知乎的提问体,那么我就用知乎的回答体。

抛开业务场景谈 API 设计的都是耍流氓(加粗)

规则是个约定俗称的东西,能减少沟通成本,但规则本身也有学习成本。如果 rest 是有 RFC 支持,白纸黑字明文规定的规则。那非常好,大家都按这个来,不会出什么幺蛾子。V 站也不会有人隔三差五的出来讨论 rest 规范。

(不管对不对,先踩一番显得自己很高明的亚子)
像 REST 这种含糊不清的约定本来就是一坨 shit,restful ful ful 风格你懂吗,你的 API 有自己的 freestyle 嘛?真是滑天下之大稽!正如 5 楼所说,rest 不是标准,不是标准,不是标准。API 能在符合 HTTP 协议的情况下运行起来即可。

这个问题就像是,你觉得空格好还是 tab 好。又比如函数式之于面向对象。如果今后 graphql 普及,这个问题还有意义嘛?
拿前朝的剑斩本朝的官?(大雾)

在那个 API 风格混乱的年代,rest 的出现如同指路明灯。大家都按着这个来,减少了混乱,降低了沟通成本。这是值得肯定的。但是随着业务场景逐渐复杂,API 的设计已经没法完全符合 rest 的理念了。花心思去设计一个看起来美好的格式高度统一的 API,不如直接加个接口来的简单。

全用 post 是有缺陷的。举个例子,如果前端要上 service worker,这时候 API 全用 post,请求是没法被拦截并缓存的,也就谈不上什么离线应用。这种场景下用 rest 是保险的。

GitHub 的 API 堪称业界典范,程序员都喜欢。notion 获取数据全用的 post 请求,但这并不妨碍我喜欢它。重要的是产品。

好的 API 是自描述的,能够自洽的,符合直觉的。用户在使用某个接口后,能够推导出其它接口的用法。API 面向的用户群体是程序员,对于程序员来说文档*重要。文档是*好的约定,rest 不 rest 无所谓啦。
mcfog 27
mcfog 2019-08-26 21:25:29 +08:00 via Android
@est 我说 restful 能做,又没说建议用 restful 做。

如果你不懂怎么在一个 restful 风格的体系里设计符合 restful 风格的 2fa 也好 captcha 也罢我可以和你讨论一下我的想法,但我觉得你肯定没有兴趣

哦对了,我也不喜欢 restful,但喜不喜欢一门技术和是否理解这门技术的优缺点,还有能否理性地讨论一门技术是三件不一样的事情,希望你不会因此错过一些更有价值或是有趣的技术
artandlol 28
artandlol 2019-08-26 21:27:20 +08:00 via Android
建议用 grpc 吧
akira 29
akira 2019-08-26 22:13:13 +08:00
文档齐全的 API 就是好 API
dodo2012 30
dodo2012 2019-08-26 22:20:47 +08:00
@westoy rails 到现在也是按 rustful 来的,所以写习惯 rails 后,写所有其它语言的接口全会自学按 restful,
AngelCriss 31
AngelCriss 2019-08-26 23:08:43 +08:00 via Android
不用 http 不就行了
chocotan 32
chocotan 2019-08-26 23:13:02 +08:00
从上面的回复来看,不同的人对 restful 理解会出现偏差
那就别用了,全用 POST 吧
chocotan 33
chocotan 2019-08-26 23:14:17 +08:00
刚看到二楼…
我的客户连 content-type 都不懂,指望对方懂这些 http method ?
tedzhou1221 34
tedzhou1221 2019-08-27 08:13:00 +08:00 via Android
我司现状,强制 Post + json 也不知道好不好,但我知道拍板的人不懂技术。
liuxey 35
liuxey 2019-08-27 08:33:50 +08:00 ❤️ 1
能完全参照 RESTful 的有几个,所以也不能 50 笑百,

只要文档清晰, 沟通顺畅,工具好用,HTTP+XML 我也没意见
est 36
est 2019-08-27 10:07:54 +08:00
@mcfog 说得好。。。。
switch100 37
switch100 2019-08-27 13:01:46 +08:00 via iPhone
前端就是屁事多,给你 api 非得挑三拣四的,乖乖切页面不就可以了吗,还管到后端来了
StarkWhite 38
StarkWhite 2019-08-27 17:23:30 +08:00
GET, PUT, DELETE 等会对参数转义,调试麻烦,而且浏览器对字符长度限制也比较大,
GraphQL 就是只用 HTTP POST 了,参数内用 query 和 mutation 标识,多简单~
话说大家经常讨论的那个 APIJSON 也跟风全用 HTTP POST 了 /狗头

Android System WebView 和 Google Chrome 無法更新

各位先进大家好,Android System WebView 和 Google Chrome 无法更新,按一下更新,圈圈转一下就停了,试了好多方法,例如清除缓冲区的资料,网路上能找到的方法都试了,就是没用,想请较大家 网上搜索有一样的情况的也没出处理结果。 手机 piexl3 代理开的,其他软件都正常更新,就 这两个不行的 已解决了https://www.youtube.com/watch?v=Q1UmyIZHOLg

4 条回复  •  2021-03-25 17:36:34 +08:00    
1 yyyb   4 天前 我这里是不能更新 ph,按一下更新,圈圈转一下就停了,试了好多方法,例如清除缓冲区的资料,网路上能找到的方法都试了,就是没用,*后换了个毛子的梯子更新成功了    
2 LuciferGo   3 天前 有时候是网络问题,有时候双清就好,看情况的,判断是否网络问题,打开 Google app 看下 assistance 信息流就可以判别    
3 szx300   3 天前 via iPhone @yyyb #1 我按视频的教程更新好了!应该不是梯子的问题!还是谷歌系统问题!    
4 szx300   3 天前 via iPhone @LuciferGo #2 清了好多次了!目前处理好了!

现在移动端的应用主流都用什么模式开发?

为什么我感觉原生程,都没有什么热度

  • ios : object-c swift
  • android : java kotlin

然后就是 web 开发的,被吐槽各种不好用和 BUG 多

  • cordova ionic framework7
  • vue weex
  • react RN

虽说上面提及的东西用都是可以用着,但是生产环境线上项目都使用的是什么样子的技术做支撑?

 

15 条回复  •  2021-03-24 14:44:11 +08:00

1 SystemLight   6 天前 补充一下,我感觉 python 的 Kivy 也可以,还不错

2 EasonC   6 天前 via iPhone swift or flutter

3 ychost   6 天前 flutter + 原生 混合开发貌似可以试试水

4 nicevar   6 天前 需求复杂的就选原生为主,弄其他花里胡哨的没什么好处

5 tanranran   6 天前 现在主流还是原生 [kotlin 、swift] , [object-c 、java] 慢慢用的人越来越少了,除了老项目 web 开发,的话,react [taro] 和 vue [uniapp] 吧

6 JHExp   5 天前 flutter+原生的体验是真的可以 但是 flutter 不能热更 所以很多还是走的 h5

7 d7sus4   5 天前 内容、服务类应用更注重开发和维护成本,目前就是 RN 和 Flutter,个人认为还是 RN 比较靠谱,Flutter 感觉一直在横向扩张,目前还是不太敢在生产环境里用,保持关注吧。 复杂的工具类或重型应用,或者注重个性化体验和设计的,毫不犹豫选原生。 没有历史包袱的话直接 swift/kotlin 就好。

8 Roardeer   5 天前 我一直用的 Xamarin

9 OldActorsSmile   5 天前 uniapp

10 IGJacklove   5 天前 via Android 一般都是混合开发吧 rn,flutter 大厂都在用,没啥好担心的,还是看你自己的需求。

11 abcbuzhiming   5 天前 @Roardeer 很少看见用这个的,这东西的生态圈能赶得上 RN 吗?

12 Roardeer   5 天前 微软的生态,国内不算主流吧。我主要是全栈都用 C#

13 newHunter   5 天前 uniapp 一把梭

14 guiyun   5 天前 flutter 的话大厂用的话还挺好的,小厂还是算了吧,当时技术总监要我们用 flutter,结果技术总监一走,我们 flutter 的项目都不知道怎么维护了

Pixel 3XL 刷入 Android10aosp 生成的镜像,通过 fastboot flashall -w 刷入不能启动

环境:Windows10 + vb 虚拟机+ ubuntu20 ;
aosp:Android10.0.0_r40;
终端:pixel 3XL
说明:编译 asop 时已经下载了所有需要的驱动;
现象:执行 fastboot flashall -w,Sending 、Writing 镜像之后,终端进入 fastbootd ;然后我进入 recovery 清空 Wipe data/factory reset 数据,之后 reboot ;
reboot 启动出现问题,一直卡在 google 静态界面;
继续重启,进入 fastboot,出现 no valid slot to boot

pixel 3xl 线刷源代码生成的 out/target/product/crosshatch/下的镜像到底怎么进行呢?我的操作问题在哪里呢?
希望大佬们来帮帮忙,卡了很久了

5 条回复  •  2021-03-25 11:05:04 +08:00    
1 Jirajine   5 天前 via Android 卡屏的时候用 adb 看一下日志。 继续重启不行应该是因为检测到 A/B 分区里的系统都启动不了。    
2 FATEQiang   5 天前 @Jirajine 现在重启只能进到 bootloader 界面了,按 power 键 start 只能无限重启 bootloader,提示:Enter reason:no valid slot to boot    
3 FATEQiang   5 天前 @Jirajine ADB 用不了    
4 20015jjw   4 天前 via Android 你就不能用 3xl 的 Google 镜像先救活吗    
5 FATEQiang   4 天前 @20015jjw @Jirajine 成功了,环境问题,ubuntu20 版本或者虚拟机的锅(大概率 ubuntu20 )。在 windows 下烧录,fastbootd 模式就能继续执行烧录指令.

Android 开发 还有什么能够增强编速度的插件或者做法呢?

问题经过

3 年前用过 freeline ( https://github.com/alibaba/freeline) [可以 1-3 秒编译生效,大部分场景不用重启 APP ] 

真的很惊艳,和 iOS 中的 Injection 有的一比

可是随着 alibaba 的放弃维护,freeline 也无法使用

项目现在能用 aar 的也都用 aar 了

在此请教下各位大佬,2021 年了 Android 现在有什么办法能够加快编译呢

目前所用的配置

AndroidStudio 版本

Android Studio 4.1.2
Build #AI-201.8743.12.41.7042882, built on December 20, 2020
Runtime version: 1.8.0_242-release-1644-b01 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows 10 10.0
GC: ParNew, ConcurrentMarkSweep
Memory: 1237M
Cores: 8
Registry: ide.new.welcome.screen.force=true, external.system.auto.import.disabled=true
Non-Bundled Plugins: GsonFormatPlus, org.jetbrains.kotlin, wu.seal.tool.jsontokotlin

语言用的是纯 kotlin
gradle 使用得版本是 6.5
build.gradle 中能配置的也都配置了


gradle.properties 配置

android.useAndroidX=true
android.enableJetifier=true
org.gradle.daemon=true
org.gradle.configureondemand=true
org.gradle.parallel=true
org.gradle.jvmargs=-Xmx4096m -XX:+UseParallelGC -XX:MaxPermSize=1024m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

#开启 gradle 缓存
org.gradle.caching=true
android.enableBuildCache=true

#开启 kotlin 的增量和并行编译
kotlin.incremental=true
kotlin.incremental.java=true
kotlin.incremental.js=true
kotlin.caching.enabled=true
kotlin.parallel.tasks.in.project=true


#优化 kapt
kapt.use.worker.api=true
kapt.incremental.apt=true 
kapt.include.compile.classpath=false
kapt.verbose=true
# Kotlin code style for this project: "official" or "obsolete":
kotlin.code.style=official

        
#优化 databinding
android.lifecycleProcessor.incremental=true
android.databinding.incremental=true
android.injected.testOnly=false

#显示过时的调用
android.debug.obsoleteApi=true

==虽然已经做了上述的配置但是编译一次还是大约需要 15-30s 左右==

第 1 条附言  ·  5 天前

找到一张优化的图,可以按照上述一步一步的优化

image.png

19 条回复  •  2021-03-24 09:47:34 +08:00    
1 AoEiuV020   10 天前 同求,我现在基本上编译时就拿起手机看看或者刷刷 v2ex,    
2 systemcall   10 天前 转鸿蒙开发,用 Harmony Studio 试试    
3 gainsurier   10 天前 via iPhone 才十几秒,够幸福了    
4 stardust21   10 天前 十几秒很快了,可以尝试按功能分几个 module,做某个功能的时候单独编译其中的一个    
5 winterbells   10 天前 https://developer.android.com/studio/preview/features#use-java-11 你试试,公司项目编译大概 10%提速 还有一个 https://docs.gradle.com/enterprise/gradle-plugin/ 没验证过有什么差别 我们年前就用 AS Canary 版本了( bug 不少……),gradle 用 nightly,JDK 11 编译还是要六七分钟起步,有编译缓存就无所谓了    
6 tanranran   10 天前 @stardust21 #4 项目还没有大到要拆 module 的时候,其实现在相当于是当单一的 module 编译一次需要几十秒    
7 john6lq   10 天前 via iPhone Offline mode 打开    
8 xloger   10 天前 十几秒是真的很快了,我记得前几年 Gradle 没优化好的时候,编译一次得两分钟吧    
9 hotsymbol   10 天前 转 Flutter 吧    
10 charliecaptain   10 天前 via Android 我们项目怎么优化都是 7 分钟,摸鱼儿不好吗    
11 kingzeus   10 天前 把项目拆成 module,分布式编译,*后是加个本地 maven 镜像    
12 tanranran   10 天前 @john6lq #7 打开了    
13 tanranran   10 天前 @hotsymbol #9 有考虑中    
14 tanranran   10 天前 @systemcall #2 难道你不知道 Harmony Studio 基于开源版的 Android Studio 开发的吗    
15 tanranran   10 天前 @xloger #8 有一说一,几年前的比现在的快多了    
16 HongJay   10 天前 十几秒你还想怎么样    
17 tanranran   10 天前 @HongJay #16 想达前端热更新,Flutter 热重载的效果,其实这个是能做到的比如 [freeline] [ instant run] ,但是如今都不可用    
18 systemcall   10 天前 @tanranran #14 胡说,明明是 Google 偷了牢厂的代码    
19 Porster   5 天前 用 M1 芯片开发的感受:*次编译慢点,后面改代码运行都是 10s 编译完成。不需要加入这些提升编译速度的手段了。

 

为云而生、多快好省,这就是星星海的style!

腾讯云对外上新了一款服务器,号称深度自研且独一无二,其名字也十二分的卡哇伊,叫做“星星海”。晶少虽然还没来得及探寻其名的出处,不过在与腾讯服务器供应链总经理刘裕勋的谈聊中已基本了解到星星海的重要style之一,为云而生。

%title插图%num

星星海,腾讯首款为云而生的服务器,不是简单挂个响亮的标签而已。深入剖析 “为云而生”的理念,我们恐怕还要追溯到通常情况下的服务器研发过程。

我们发现,一般情况下的服务器研发很难规避“堆砌”的窘境,所谓A用户需要A类特性,B用户又要求B种风格,一来二去整个架构变得异常复杂,企业级服务器更是如此,因为需要满足更多企业以及用户的需求;而相比之下此处的“为云而生”,很重要的一点就是要依照云的属性进行设计甚至优化。所以在设计部署过程中,星星海果断结合了数据中心实际部署环境要求,针对云端的计算、存储、网络等场景做了重点优化,据了解能够有效满足腾讯云98%应用场景需求。

“其实每个软件产品对相应硬件的配置要求均有不同,但如果可以使用同一套服务器架构,无论是CPU内存还是基础存储,都可以满足软件层面产品的需求,自研技术上达到了承上启下,也被称为软硬协同。”刘裕勋表示。在这样的想法驱使下,星星海通过精细的硬件设计大幅度降低了硬件成本和运营成本,同时有效匹配腾讯服务器供应链整体升级,更好整合了硬件产业链能力。

%title插图%num

除了从云出发,高效利用硬件资源之外,星星海很重要的一点还表现在精简,有数据显示相比传统服务器,星星海在整个用料剪裁方面超过了20%,这种“好与省”尤其在能耗上体现突出。例如10万台星星海服务器组成集群,相比传统服务器实际上每年都会节省超过5亿度的用电量,毕竟电量消耗的百分之五十均来自服务器的能耗,当然这种精简精神是对标传统而言。

在星星海对外官宣的介绍中,我们发现,其与传统服务器相比很重要的一点就是整机方案可以支持不同的CPU主机类型,兼容架构具有较高的前瞻性,硬件基础被统一规划且放言可支持未来3-5年的服务器产品演进。有资料显示,其联合AMD在*新ROME平台下深度定制CPU,实现了行业*优单核性能和*优单核TCO。根据晶少了解,星星海可以实现云服务实例综合性能提升35%以上,其中视频处理速度提升40%,图形转码得分提升35%,Web服务页面QPS提升高达152%。

谈及深度定制AMD的CPU,刘裕勋提出,腾讯作为AMD七大CSP之一,在测试过程中发现的相关问题一经反馈就会得到AMD方面的高度重视,并用于AMD产品技术升级的重要参考之一。

以本次星星海服务器深度定制CPU为例,先前AMD对外发布的CPU只有两种类型,分别为32核与64核,而星星海在*新的rome平台下定制的单颗CPU为48核,此区别主要源于腾讯云方面针对内存开销和整个服务器性能开销的综合评定与兼顾。相比通常售卖的两套CPU搭载一个8G内存的传统形式,具体来说基于腾讯云海量数据的运营,48核的CPU无论是主频还是性能上都达到了*佳的适配效果。通俗来说,如果替换成一个更高阶的CPU,其能耗就会大大增加,说到这里,刘裕勋还特地列举了十分幽默诙谐的例子让大家能够更加形象生动的了解:一张餐桌本可以容纳十人就餐,如果每个就餐的人都是体重超过200斤的肥胖者,想必这样的就餐环境就会显得拥挤很多,而每一个身材肥胖的就餐者就像一枚高能耗的CPU,在实际使用过程中肯定会出现诸多问题。除了深度定制的CPU助力,在配套日虹散热技术的加持使用下,星星海实现了*大负载能效对比业界可提高50%,尽管该技术不算是业界散热的新理论,但实际落地,星星海算是杰出代表之一。

“确实,星星海对于我们来说算是first one,但*不是only one,我们已经把未来3-5年对云计算硬件服务器领域的发展趋势做了充分的认证,使服务器整套方案能够满足未来3-5年的产品演进。可以简单理解为,就是这样一套服务器方案,当面对新的技术应用层出不穷之时,只需要作出细微调整而不改变大的架构方向,就可完成技术适配与升级。”晶少得知,在星星海设计到量产不到一年时间这样的速率下(一般传统的服务器厂商,从 概念设计到可能的量产部署,一般周期在一年半到两年),未来到年底将会部署至少超过五千台的规模在腾讯云现有的业务领域中,可谓“又多又快”的节奏。

正常预测的话,在今年春节的QQ抢红包环节或者微信业务都能够直接运行在星星海上。通过快速部署在腾讯的公有云产品上,而且用自研QQ和微信,如此庞大体量的业务去做拉测来打磨整个硬件和软件产品,相信通过这种方式“锻炼”出来的腾讯云星星海能够更加高效为用户提供性价比优势的计算产品,赢在场景的丰富性。

谈及星星海的未来,刘裕勋提出了适配不同CPU架构的方向,其中包括英特尔、国产化架构抑或是自研芯片等,毕竟对于云服务商来说,降本增效历来都是永恒的主题。“如果没有办法每年都提供优质、高性价比的产品给用户,一定程度上相当于整个腾讯云的竞争优势会受到影响。我们更愿意通过产业互联网的思维,基于多年在用户体验方面的打磨,实现针对性能和成本的*致追求;通过经营化和演进能力,提供高性价比产品来降低企业或者客户上云的成本或者用云的开销,进而促进整个产业互联网的蓬勃发展。”
————————————————

原文链接:https://blog.csdn.net/sch881226/article/details/102954472

阿里云和腾讯云可以用来下载 bt 吗?

这是一个创建于 525 天前的主题,其中的信息可能已经有所发展或是发生改变。

scukmh 2019-10-21 08:49:39 +08:00
可以,只要你付得起流量钱。
silencefent 2
silencefent 2019-10-21 09:15:01 +08:00
1M 的小水枪怎么下载下来呢
1648820920 3
1648820920 2019-10-21 09:16:32 +08:00
百度网盘可以下载 bt..
x86 4
x86 2019-10-21 09:18:47 +08:00 via iPhone
有钱买大宽带就可以
lneoi 5
lneoi 2019-10-21 09:20:49 +08:00
这不就是各个软件中的离线下载嘛,付得起钱就行
leafleave 6
leafleave 2019-10-21 09:24:10 +08:00 via iPhone ❤️ 1
楼主想问的是不是版权投诉问题
love 7
love 2019-10-21 09:29:23 +08:00
还不如找个国外便宜 VPS,也没人管,至少水管大
zmxnv123 8
zmxnv123 2019-10-21 09:29:52 +08:00 via iPhone
好好的 vps 不用总什么 ce
zhihupron 9
zhihupron 2019-10-21 09:31:21 +08:00
@leafleave 是的
poplar50 10
poplar50 2019-10-21 09:52:03 +08:00 via Android
可以,只要你付得起流量费。

fengbjhqs 2019-10-21 09:57:56 +08:00
可以下载,*好不要太多上传,避免盗版,
mrweiwei 12
mrweiwei 2019-10-21 10:50:38 +08:00
@love 国外的不是 bt 查的更加严格吗
houzhimeng 13
houzhimeng 2019-10-21 10:53:39 +08:00
可以,以前用香港的机器下 bt 巨爽
huanxianghao 14
huanxianghao 2019-10-21 11:58:10 +08:00
可以,没有问题,尽管上
saltedFish666 15
saltedFish666 2019-10-21 15:16:54 +08:00
为啥不行?
castle6610 16
castle6610 2019-10-21 18:28:38 +08:00
可以买一个 hostsolutions 1Tb 的大盘鸡,虽然网速感人,但流量 10T 根本用不完,而且内容抗投诉,随便放什么东西都可以。

图片站服务器该怎么选择配置架构

*近正在写一个图片站,刚好*近各大云都有在搞活动,所以打算买一个服务器。虽然我会写代码,但是服务器配置真心不知道该怎么选择。

我的网站情况:主要就是图片浏览,网站以手机端网页为主,后期可能会考虑开发 APP,网站每张图片大概 200Kb 左右,总量大概 1TB。这也是我人生中*个为自己写的项目,以前都是为老板写项目。

求 V 站各位大神有空指点下,该怎么选择服务器配置,什么样配置适用什么样的访问量,是否需要单独图片的服务器和单独的网站服务器,(哦还有,网站有点点擦边球,嘿嘿嘿,可能应该也许是买大陆之外的区域的服务器)

qyvlik 2019-11-01 15:13:01 +08:00
图片 1TB 的话。阿里云的 OSS,aws 的 S3 做图床好过自建图床服务器。
然后你的站点主要是图片浏览,那么需要运行数据库和后端程序,在同台服务器上的,推荐 2 核 4G 起,这是乞丐版。
不过到时要是需要升级磁盘的话,还是麻烦一堆,我做的话,如下配置:
版本一:
– 阿里云的 OSS 或者 aws 的 S3
– 1 核 1G 跑后端服务器,带宽乞丐版 1M,标准版 5M 起,磁盘 40G 起。记得带公网 IP。
– 1 核 1G 的云数据库(云数据库升级容易),磁盘*低配置完事,可以单机规格,也可以一主一从。
——–
版本二:
– 阿里云的 OSS 或者 aws 的 S3
– 2 核 4G,服务器,跑后端和数据库,磁盘记得大一些,那就 50G 起,做好磁盘拓展规划吧。
——–
https://www.goclouds.cn/goclouds/page/datamagic/calculator/calculator.jsp 这个是 aws 的价格计算器。
阿里云自带的价格计算器还行。
其他腾讯云、华为云等没用过。
eason1874 2
eason1874 2019-11-01 15:18:42 +08:00
图片站,还擦边球,那当然是用国外厂商的机器啊,再套个 CF,牺牲个别用户的访问速度换取低成本大带宽。
ivanfjz 3
ivanfjz 2019-11-01 15:51:47 +08:00
@qyvlik 图片放 OSS 或者 S3 的成本似乎蛮高的和服务器差不多
ivanfjz 4
ivanfjz 2019-11-01 15:52:02 +08:00
@eason1874 是有这个打算呢
Rwing 5
Rwing 2019-11-01 15:53:04 +08:00
擦边球放国内不会请喝茶吗?
qyvlik 6
qyvlik 2019-11-01 16:03:27 +08:00
@ivanfjz #3 用 OSS 或者 S3 主要是图省事,费用也是用多少算多少。
在前期摸索的时候,可以节省费用。
例如 1TB 的资源,如果是弄服务器的话,一开始就得准备 1TB 的磁盘,然后把服务器的带宽临时调大,然后上传资源。搞完后,发现 1TB 的磁盘其实不够,得留一些余量什么的,或者磁盘某些指标都有问题,再去维护这个的话,我是觉得麻烦。
ivanfjz 7
ivanfjz 2019-11-01 17:12:45 +08:00
@Rwing 所以放国外
ivanfjz 8
ivanfjz 2019-11-01 17:13:48 +08:00
@qyvlik 也有道理
Rwing 9
Rwing 2019-11-01 17:21:54 +08:00
@ivanfjz 哦,确实应该放国外,老铁,盈利多少偷偷暴漏一下吧
ivanfjz 10
ivanfjz 2019-11-01 17:30:06 +08:00
@Rwing 老铁,代码还没写完,不求盈利,更重要的是写个自己的项目

友情链接: SITEMAP | 旋风加速器官网 | 旋风软件中心 | textarea | 黑洞加速器 | jiaohess | 老王加速器 | 烧饼哥加速器 | 小蓝鸟 | tiktok加速器 | 旋风加速度器 | 旋风加速 | quickq加速器 | 飞驰加速器 | 飞鸟加速器 | 狗急加速器 | hammer加速器 | trafficace | 原子加速器 | 葫芦加速器 | 麦旋风 | 油管加速器 | anycastly | INS加速器 | INS加速器免费版 | 免费vqn加速外网 | 旋风加速器 | 快橙加速器 | 啊哈加速器 | 迷雾通 | 优途加速器 | 海外播 | 坚果加速器 | 海外vqn加速 | 蘑菇加速器 | 毛豆加速器 | 接码平台 | 接码S | 西柚加速器 | 快柠檬加速器 | 黑洞加速 | falemon | 快橙加速器 | anycast加速器 | ibaidu | moneytreeblog | 坚果加速器 | 派币加速器 | 飞鸟加速器 | 毛豆APP | PIKPAK | 安卓vqn免费 | 一元机场加速器 | 一元机场 | 老王加速器 | 黑洞加速器 | 白石山 | 小牛加速器 | 黑洞加速 | 迷雾通官网 | 迷雾通 | 迷雾通加速器 | 十大免费加速神器 | 猎豹加速器 | 蚂蚁加速器 | 坚果加速器 | 黑洞加速 | 银河加速器 | 猎豹加速器 | 海鸥加速器 | 芒果加速器 | 小牛加速器 | 极光加速器 | 黑洞加速 | movabletype中文网 | 猎豹加速器官网 | 烧饼哥加速器官网 | 旋风加速器度器 | 哔咔漫画 | PicACG | 雷霆加速