• 关于

    用户应用程序会出现哪些问题

    的搜索结果

问题

Linux迁移到Windows服务器时的注意事项

杨经理 2019-12-01 21:56:26 5583 浏览量 回答数 1

问题

揭秘知名网站如何收集个人数据及应对措施

虎笑 2019-12-01 20:54:09 10230 浏览量 回答数 2

问题

移动测试里名词解释都有哪些?

猫饭先生 2019-12-01 20:55:34 807 浏览量 回答数 0

阿里云试用中心,为您提供0门槛上云实践机会!

0元试用32+款产品,最高免费12个月!拨打95187-1,咨询专业上云建议!

回答

未来云计算的发展将会面临哪些问题呢?1、数据的安全问题数据的安全是企业关心的问题之一。数据的安全包括2个方面:一是保证数据不会丢失,二是保证数据不会被泄露和非法访问。如果数据出现丢失又没有备份或者被泄露和非法访问,都会给企业和客户带来无法估量的损失。因此必须制定出有效的方案来保证数据的安全。虽然云计算为存储数据提供了无限的空间,也为数据的处理提供了无限的计算能力,但是用户对于托管自己加密数据的云计算运营公司能否确保数据的安全仍存在着质疑。在使用云计算服务时,用户往往不清楚自己数据存放的位置,这样就会使用户产生对数据安全的担心,所以要有效地解决数据的安全问题,未来的云计算必须考虑全方位的安全解决方案,提供多用户架构的良好设计,还必须要有确实可信的云计算运营公司。2、互操作问题在对云计算系统进行管理时,应当考虑云系统之间的互操作问题。当一个云系统需要访问另一个云系统的计算资源时,必须要对云计算的接口制定交互协议,这样才能使得不同的云计算服务提供者相互合作,以便提供更好更强大的服务。3、网络的性能问题提高网络性能也是云计算面临的挑战之一。用户使用云计算服务离不开网络,但是接入网络的带宽较低或不稳定都会使云计算的性能大打折扣,因此要大力发展接入网络技术。此外,在云计算网络中完成信息的高效处理,云计算集群服务器要具备较高的性能,同时为了保证云计算的服务高质量地传给需要的用户,网络中通信设施也必须具备高性能。4、公共标准的开放问题目前,云计算还没有开放的公共标准,这给用户造成了许多不便。用户很难将使用的某个公司的云计算应用程序迁移到另一家公司的云计算平台上,这样就大大降低了云计算服务的转移弹性。因此,云计算要想更好的发展,就必须制定出一个统一的云计算公共标准。来自:http://www.enkj.com/idcnews/Article/20180908/14462

dickeylth 2019-12-02 01:48:17 0 浏览量 回答数 0

问题

性能测试:软件测试的重中之重

云效平台 2019-12-01 21:45:09 5839 浏览量 回答数 1

问题

由Monkey引发的测试工具方面的想法

mqc 2019-12-01 21:00:01 2036 浏览量 回答数 0

问题

函数计算

黄一刀 2020-04-04 03:07:45 80 浏览量 回答数 1

问题

你需要的是持续的服务改进

sunny夏筱 2019-12-01 21:41:32 7450 浏览量 回答数 3

问题

Web测试方法

技术小菜鸟 2019-12-01 21:41:32 7022 浏览量 回答数 1

问题

#职场 5期 如何创造资产?

游客ih62co2qqq5ww 2020-04-29 09:15:25 2 浏览量 回答数 1

回答

一 、iOS APP 上架流程简介 1. 申请开发者账号 苹果的开发者账号主要分为个人(Individual)、公司(Company)、企业(Enterprise)、高校(University)四种类型,每年资费分别为$99、$99、$299、免费)。一般开发者申请的都是个人或者公司的,企业的开发者账号开发应用不能发布到App Store,只能企业内部使用。这个申请过程一般可能需要一个星期左右。公司和企业的需要邓白氏码,如果邓白氏码未申请,请先申请邓白氏码,这个过程需要一到两个星期。 创建证书、AppID、生成描述文件 通过 Mac 的钥匙串工具,生成证书请求文件,下载证书,这里需要注意的是下载下来的证书只能在请求该证书的电脑上使用,如果想给其他开发者使用需要将已经导入的证书导出为个人信息交换(.p12)格式供他人使用。 AppID 的创建需要用到项目的 Bundle ID,之后便可以创建描述文件了。 在开发者中心的 iTunes Connect 中配置 App 相关信息 在开发者中心里的 iTunes Connect 里的 APP 选项中新建 APP 项目并配置相应的信息(需要各个版本的屏幕截图,运行模拟器,调到最大(command+1)用 command+s 截图,还有就是一个1024*1024的图标,不能有圆角) 使用 Xcode 打包上传 App 将 2 步骤中申请好的证书和描述文件正确配置到 Xcode 中,设置好Xcode 的一些属性: 在Xcode中选择iOS Device(这里不能选择模拟器) 如果应用不支持横屏,请在 General 选项中将 Landscape Left 和 Landscape Right 两项的勾选去掉 查看版本号和构建版本号 将断点、全局断点、僵尸模式等都去掉 设置为 Release 模式 之后便可选择 Xcode->Product->Archive 打包项目,打包完成后选择 Upload to App Store 上传。如果不想使用 Xcode 上传的话,也可以选择 Export 导出 ipa 文件, 需要注意的是在导出时,必须选择 Save for iOS App Store Deployment。然后通过Application Loader 工具上传 ipa 文件。 提交审核 以上步骤完成后,返回 iTunes Connect 上查看自己的 App 信息,在构建版本中选择刚刚上传的 App 版本,此时有可能显示正在处理,这时可能需要等几分钟再回来查看。选择好版本后点击提交以供审核,这时 App 会变成等待审核状态。 后续 后续就是等待苹果的审核人员审核应用了,如果一切顺利的话,这个过程需要一到两个工作日便可完成审核,当然前提是你的应用符合苹果的审核条款。如果审核不通过,请及时根据反馈信息修改应用,再次提交直到符合要求。审核通过后,如果之前选择已经选择好自动发布,便可在 AppStore 上查看和下载应用了。 二 、iOS 上架审核过程常见的坑与解决方法 1. 问题:用户生成内容(UGC)缺少必要的审核 为了防止非法滥用用户生成的内容,从而给用户提供虚假信息、盗取用户的知识产权,社交应用以及应用当中包含用户生成的信息的应用必须包括下述功能: 过滤不良内容 提供举报机制 后台服务可以提供阻止骚扰用户的行为 提供官方联系方式,让用户可以快速联系到开发商 解决方案: 维秀直播 App 提供了用户实时弹幕功能,所以涉及到了 UGC,他们的处理方法是增加关键词过滤,还有通过房管的方式人工审核,处理违规用户。 问题:应用中使用了 IDFA 被拒绝 IDFA 主要被用于广告中区分设备的作用。AppStore 禁止没有使用广告而采集 IDFA 的 App 上架,所以如果 App 本身没有广告的话,使用第三方 SDK 要注意检查是否含有 IDFA 广告模块。 解决方案: 如果应用本身有集成广告的话,只需要在提交审核的时候勾选正确的广告标识符选项即可。 如果应用本身未集成广告,却包含 IDFA 的话。这种情况一般都是集成的第三方 SDK 中包含 IDFA 导致的。首先寻找是否有不包含 IDFA 的 SDK 版本,如果没有的话可以参考 ShareSDK 的解决方法,通过后台配置在审核期间为应用添加广告,审核完成过后将广告展示去掉。 3. 问题:应用不支持 IPv6网络下使用 2016年6月1号起,苹果的审核人员会在 IPv6 网络上审核你的应用,所以如果你的应用程序无法使用 IPv6 协议,可能会被拒绝。 解决方案: 卓易夺宝和乐动听 App 上架过程中就因为 IPv6 的支持原因被拒。他们的解决方案是: 协调后端人员添加对 IPv6 网络的支持。 App 端更新相关的第三方 SDK,比如使用 ASI 或者 AFN 的版本太低,使用最新的 AFN 即可解决问题。 当然这些做完之后最好在Mac 上面搭建 IPv6网络供测试人员进行完测试再重新发布。 4. 问题:第三方登录、支付、分享未安装应用,提示下载被拒 这个问题其实被拒的原因有两种,第一种是未安装应用没有任何提示,这种情况下相当于应用有无效的按钮所以会被拒;第二种是提示下载对应的第三方 App,这也是苹果所不允许的。 解决方案: 最新的第三方登录等相关的 SDK 目前已知的(微信,QQ,微博)都已经对这种情况做了处理,在未安装的情况下会调用 web 进行登录,所以如果测试过程中发现可以成功在 web 上登录的话可以不做处理。以前在没有这种处理机制的情况下需要开发者调用对应接口,先判断是否安装了相应的第三方 APP,如果未安装,需要隐藏按钮,这样便可轻松过审。 问题:虚拟产品未使用应用内支付(IAP)被拒 根据苹果官方最新的审核条款:如果你希望通过付费才可以解锁你的应用当中的一些功能(例如,订阅内容,游戏货币,游戏关卡,获取优质内容,解锁完整版本),你必须使用应用内付费(IAP)。如果这种情况下,应用使用了其他的第三方支付,应用将被拒绝上架。 解决方案: 审核的时候,把相应的虚拟产品隐藏起来,通过后再放出来,此招有风险,可能会受到警告信,甚至被封号,如果用户量小就无所谓了,先把App 搞上架! 审核的时候,走 IAP 的支付方式,审核完成后再通过服务器配置动态切换到支付宝、微信等第三方支付。该法类似于方案1,也存在风险。 学习58同城,让用户去网站购买产品,买了产品的账号到移动端使用功能。 老老实实的使用 IAP 吧。 6. 问题:使用后台定位被拒 关于位置服务苹果的审核条款原文如下: 使用位置服务的应用程序必须提供和位置服务直接相关的功能。使用基于位置的API不允许用于提供紧急服务,或者实现自动控制车辆、飞行器以及其他设备(小型的设备例如小型无人机和玩具例外),远程控制汽车警报系统等。在收集、传输和使用用户的位置数据之前,请确保你已经取得了用户的同意。 如果应用程序使用了后台定位服务,务必在应用当中阐明其目的。并且使用后台定位的话需要提供一个明确的提醒告诉用户这么做会加快电量消耗。 一般应用在这一块被拒的原因有以下几种: 应用根本不需要定位功能。 应用需要定位功能,但是只需要短暂的获取少数的用户的位置,比如美团,新闻类的应用需要获得当前用户的所在城市,却使用了后台定位模式。 应用确实需要使用后台定位,比如打车类软件,但是应用中却没有任何界面展示这些定位数据。 解决方案: 如果你的应用根本不需要定位功能,但是还是在 info.plist 里面添加了 location in the UIBackgroundModes key ,那么在 plist 文件里面移除 UIBackgroundModes key 就可以,这中情况较少,新手小白会犯这种错误。 如果只是简单获取位置不需要使用后台定位,只需要去掉info.plist 的文件中的 UIBackgroundModes 即可。 这种情况比较复杂,推荐的做法是通过表格或者轨迹展示出后台定位的数据,再提交审核的时候告诉苹果那个功能需要后台定位,具体展示后台定位的 数据在那个界面,最后需要 Continued use of GPS running in the background can dramatically decrease battery life加到 App 描述里 面,可以参考滴滴出行的描述,否则也会被拒绝。 7. 问题:info.plist 权限配置被拒 iOS 10 之后如果需要调用相机,蓝牙等设备时,需要在 info.plist 文件中进行相应的配置,否则应用会直接崩溃,在 iOS 10 之前则是无法访问。另外,如果在 info.plist 中调用了配置了权限在应用中却没有使用到也是会被拒的。 解决方案: 一定要注意自己的 App 在使用中用到了哪些权限,不要添加无用的权限,也不要缺少必要的权限。 问题:应用提示更新被拒 应用内不能有任何提示更新应用的字样,且应用的更新只能通过 AppStore。因为苹果对于应用的更新有自己的一套策略,所以禁止应用本身提供更新方式,只要应用内出现。 解决方案: 如果不是很必要的话,尽量将应用内涉及到应用更新的部分去掉。如果真的需要使用应用更新,推荐的方法是应用启动的时候获取下应用在 AppStore 上面的版本号,与自己的版本号进行比较,当自己的版本号小于 AppStore 上面的版本号时,提示更新,否则的话不显示更新相关的内容。 问题:夺宝(抽奖)类应用被拒 根据 AppStore 审核准则 20.4 的规定,抽奖卷或抽奖参与权的购买,不论是透过第三方支付渠道或者余额扣款实现,都不能够在 app 内执行。 解决方案: 卓易夺宝 App 上架过程中遇到的问题,最后的解决方法是在审核过程中,所有的支付行为都跳转到 Safari 浏览器上面进行,审核完成后再使用支付宝等 app 平台支付。 问题:隐私条款问题被拒 在未获得用户事先允许,或未告知用户信息将被如何,在哪里使用的情况下,应用不可以传输用户数据。 解决方案: 《网站服务协议》《隐私条款》这些都不要少,注册时候让用户可勾选。另外注明需要的用户信息用来做什么。 问题:未提供测试账号被拒 如果应用中有需要用到账号或者其他资源的(例如:一个二维码)才能使用的一些功能,但未提供给苹果,可能会被拒绝上架。原因是苹果审核人员无法测试这些功能。 解决方案: 提供一个有效的测试帐号以及登录信息,并提供测试功能必要的的硬件和资源(例如,一个测试用的二维码) 问题:未通过 HTTPS 访问被拒 App Transport Security(ATS) 是 Apple 为增强 iOS App 网络通信安全提出的安全功能,适用于 iOS App 和 App Extension;在启用 ATS 之后,它会强制应用通过 HTTPS(而不是 HTTP )连接网络服务。 WWDC 2016上提出,2016年底或2017年初,具体时间未定。App Store 上架审核加强对 ATS 配置的 review,即强制应用必须通过 HTTPS 连接网络服务,而不是随手将 NSAllowsArbitraryLoads 置为 YES,否则审核不予通过。 解决方案: ATS 的提出,是为了在系统层面保障 iOS APP 网络通信的安全;Apple 只所以加强对 ATS 配置的审核,是为了防止开发者们遇到ATS相关的场景时,只是简单地将 ATS完全关闭(只要没有强制性措施,开发者会这么做);在此基础上,App 审核同样会遵循原则:App Review will require "reasonable justification" for most ATS exceptions。 Apple 官方给出的可以通过审核的声明 demo 如下: 必须使用第三方提供的服务,但是其没有支持 HTTPS; 必须通过域名连接到设备,但该设备不能支持安全连接; 必须展示不同来源的网页内容,但是不能基于 NSAllowsArbitraryLoadsInWebContent 支持的类(UIWebView / WKWebView)实现; 载入加密的媒体资源并且其中不涉及个人信息。 由于 Apple 官方并没有给出 ATS 审核的完整说明,ATS 审核时什么才是合适合理的声明也没有明确的客观定义,以上 demo 描述仅能作为参照。 参考文章: http://www.jianshu.com/p/b1b77d804254 https://github.com/wg689/Solve-App-Store-Review-Problem 22人点赞 iOS 作者:Jon1993 链接:https://www.jianshu.com/p/a992c88087a5 来源:简书

一只刺猬 2020-03-27 10:03:40 0 浏览量 回答数 0

问题

【前沿对话】如何看待国产操作系统UOS?体验如何?

问问小秘 2020-01-17 10:46:49 1108 浏览量 回答数 5

问题

php通过session实现url只能访问一次的问题

问问小秘 2020-01-09 17:22:07 4 浏览量 回答数 1

问题

最大限度利用 JavaScript 和 Ajax 性能:报错

kun坤 2020-06-05 22:56:50 0 浏览量 回答数 1

问题

企业运营对DevOps的「傲慢与偏见」

忆远0711 2019-12-01 21:32:29 9823 浏览量 回答数 0

问题

【精品问答】Java必备核心知识1000+(附源码)

问问小秘 2019-12-01 22:00:28 870 浏览量 回答数 1

回答

Java内存模型 按照官方的说法:Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。 JVM主要管理两种类型内存:堆和非堆,堆内存(Heap Memory)是在 Java 虚拟机启动时创建,非堆内存(Non-heap Memory)是在JVM堆之外的内存。 堆是Java代码可及的内存,留给开发人员使用的;非堆是JVM留给自己用的,包含方法区、JVM内部处理或优化所需的内存(如 JIT Compiler,Just-in-time Compiler,即时编译后的代码缓存)、每个类结构(如运行时常数池、字段和方法数据)以及方法和构造方法的代码。 JVM 内存包含如下几个部分: 堆内存(Heap Memory): 存放Java对象 非堆内存(Non-Heap Memory): 存放类加载信息和其它meta-data 其它(Other): 存放JVM 自身代码等 Java内存分配 Java的内存管理实际上就是变量和对象的管理,其中包括对象的分配和释放。 JVM内存申请过程如下: JVM 会试图为相关Java对象在Eden中初始化一块内存区域 当Eden空间足够时,内存申请结束;否则到下一步 JVM 试图释放在Eden中所有不活跃的对象(这属于1或更高级的垃圾回收),释放后若Eden空间仍然不足以放入新对象,则试图将部分Eden中活跃对象放入Survivor区 Survivor区被用来作为Eden及OLD的中间交换区域,当OLD区空间足够时,Survivor区的对象会被移到Old区,否则会被保留在Survivor区 当OLD区空间不够时,JVM 会在OLD区进行完全的垃圾收集(0级) 完全垃圾收集后,若Survivor及OLD区仍然无法存放从Eden复制过来的部分对象,导致JVM无法在Eden区为新对象创建内存区域,则出现”out of memory”错误 GC基本原理 GC(Garbage Collection),是JAVA/.NET中的垃圾收集器。 编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收内存的目的,Java语言没有提供释放已分配内存的显式操作方法。所以,Java的内存管理实际上就是对象的管理,其中包括对象的分配和释放。 对于程序员来说,分配对象使用new关键字;释放对象时,只要将对象所有引用赋值为null,让程序不能够再访问到这个对象,我们称该对象为”不可达的”.GC将负责回收所有”不可达”对象的内存空间。 对于GC来说,当程序员创建对象时,GC就开始监控这个对象的地址、大小以及使用情况。通常,GC采用有向图的方式记录和管理堆(heap)中的所有对象。通过这种方式确定哪些对象是”可达的”,哪些对象是”不可达的”.当GC确定一些对象为”不可达”时,GC就有责任回收这些内存空间。 为了保证 GC能够在不同平台实现的问题,Java规范对GC的很多行为都没有进行严格的规定。例如,对于采用什么类型的回收算法、什么时候进行回收等重要问题都没有明确的规定。 GC分代划分 JVM内存模型中Heap区分两大块,一块是 Young Generation,另一块是Old Generation 在Young Generation中,有一个叫Eden Space的空间,主要是用来存放新生的对象,还有两个Survivor Spaces(from、to),它们的大小总是一样,它们用来存放每次垃圾回收后存活下来的对象。 在Old Generation中,主要存放应用程序中生命周期长的内存对象。 在Young Generation块中,垃圾回收一般用Copying的算法,速度快。每次GC的时候,存活下来的对象首先由Eden拷贝到某个SurvivorSpace,当Survivor Space空间满了后,剩下的live对象就被直接拷贝到OldGeneration中去。因此,每次GC后,Eden内存块会被清空。 在Old Generation块中,垃圾回收一般用mark-compact的算法,速度慢些,但减少内存要求。 垃圾回收分多级,0级为全部(Full)的垃圾回收,会回收OLD段中的垃圾;1级或以上为部分垃圾回收,只会回收Young中的垃圾,内存溢出通常发生于OLD段或Perm段垃圾回收后,仍然无内存空间容纳新的Java对象的情况。增量式GC 增量式GC(Incremental GC),是GC在JVM中通常是由一个或一组进程来实现的,它本身也和用户程序一样占用heap空间,运行时也占用CPU。 当GC进程运行时,应用程序停止运行。当GC运行时间较长时,用户能够感到Java程序的停顿,另外一方面,如果GC运行时间太短,则可能对象回收率太低. 增量式GC就是通过一定的回收算法,把一个长时间的中断,划分为很多个小的中断,通过这种方式减少GC对用户程序的影响。 Sun JDK提供的HotSpot JVM就能支持增量式GC。HotSpot JVM缺省GC方式为不使用增量GC,为了启动增量GC,我们必须在运行Java程序时增加-Xincgc的参数。 HotSpot JVM增量式GC的实现是采用Train GC算法,它的基本想法就是:将堆中的所有对象按照创建和使用情况进行分组(分层),将使用频繁高和具有相关性的对象放在一队中,随着程序的运行,不断对组进行调整。当GC运行时,它总是先回收最老的(最近很少访问的)的对象,如果整组都为可回收对象,GC将整组回收。这样,每次GC运行只回收一定比例的不可达对象,保证程序的顺畅运行。 详解函数finalize 更多内容: https://chenhx.blog.csdn.net/article/details/83957456 https://chenhx.blog.csdn.net/article/details/84294481

谙忆 2019-12-02 03:08:20 0 浏览量 回答数 0

问题

网站打开慢——你想知道原因吗?!

doudou1 2019-12-01 21:48:22 9098 浏览量 回答数 1

回答

回顾2009年到如今,区块链技术的火热程度是逐年增加。各大行业巨头也在疯狂布局,势必要上演一场"群雄逐鹿"的商业大战。那这场好戏什么时候上演?有人说就在最近这两三年,还有人甚至说就在今年,2018年区块链将会出现井喷。当然,我们现在还无法做出准确的判断,但是我们可以先做好充足的准备。那么,问题又来了,区块链技术到底要怎么去弄?要用到哪些开发语言?在现在看来,这也许是很多从事区块链程序员的心声。下面整理了四种区块链技术比较主要的开发言语,希望对大家有所帮助。 JAVA开发语言(未来币) 定义:Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。 Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点 .Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。 C++开发语言(比特币、公正通、瑞波ripple) 定义:C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。 GO开发语言(以太坊、IBM) 定义:Go是一种新的语言,一种并发的、带垃圾回收的、快速编译的语言。它具有以下特点: 它可以在一台计算机上用几秒钟的时间编译一个大型的Go程序。Go为软件构造提供了一种模型,它使依赖分析更加容易,且避免了大部分C风格include文件与库的开头。Go是静态类型的语言,它的类型系统没有层级。因此用户不需要在定义类型之间的关系上花费时间,这样感觉起来比典型的面向对象语言更轻量级。Go完全是垃圾回收型的语言,并为并发执行与通信提供了基本的支持。按照其设计,Go打算为多核机器上系统软件的构造提供一种方法。 Go是一种编译型语言,它结合了解释型语言的游刃有余,动态类型语言的开发效率,以及静态类型的安全性。它也打算成为现代的,支持网络与多核计算的语言。要满足这些目标,需要解决一些语言上的问题:一个富有表达能力但轻量级的类型系统,并发与垃圾回收机制,严格的依赖规范等等。这些无法通过库或工具解决好,因此Go也就应运而生了。 Solidity开发语言(以太坊) 定义:Solidity是一种智能合约高级语言,运行在Ethereum虚拟机(EVM)之上。它的语法接近于Javascript,是一种面向对象的语言。但作为一种真正意义上运行在网络上的去中心合约,它又有很多的不同。 特别说明:以太坊具有四种专用语言:Serpent(Python启发),Solidity(javaScript启发),Mutan(GO启发)和LLL(Lisp启发),都是为面向合约编程而从底层开始设计的语言。Solidity是以太坊的首选语言,正处于紧张开发中,它内置了Serpent的所有特性,但是语法类似于JavaScript,JavaScript是web开发的常用语言。

问问小秘 2019-12-02 03:07:11 0 浏览量 回答数 0

问题

常见问题排查步骤应该怎么做?

猫饭先生 2019-12-01 22:06:23 994 浏览量 回答数 0

问题

【精品问答】python必备面试干货

问问小秘 2019-12-01 21:53:38 1125 浏览量 回答数 2

问题

网站打开速度慢的深层次分析一

doudou1 2019-12-01 21:25:29 9341 浏览量 回答数 3

问题

如何选择一款web漏洞扫描器

elinks 2019-12-01 21:15:22 7018 浏览量 回答数 0

问题

直播|如何做好分层自动化之性能测试?

云效平台 2019-12-01 21:32:50 5163 浏览量 回答数 5

回答

计算机科学与技术专业课程 课程简介 1.数字逻辑电路: “数字逻辑”是计算机专业本科生的一门主要课程,具有自身的理论体系和很强的实践性。它是计算机组成原理的主要先导课程之一,是计算机应用专业关于计算机系统结构方面的主干课程之一。 课程的主要目的是使学生了解和掌握从对数字系统提出要求开始,一直到用集成电路实现所需逻辑功能为止的整个过程的完整知识。内容有数制和编码、布尔代数和逻辑函数、组合逻辑电路的分析和设计,时序逻辑电路的分析和设计,中、大规模集成电路的应用。通过对该课程的学习,可以为计算机组成原理、微型计算机技术、计算机系统结构等课程打下坚实的基础。 2.计算机组成原理: 本课程是计算机系本科生的一门重要专业基础课。在各门硬件课程中占有举足轻重的地位。它的先修课程是《数字逻辑电路》,后继课程有《微机接口技术》、《计算机系统结构》。从课程地位来说,本课程在先修课和后继课中起着承上启下的作用。主要讲解计算机五大部件的组成及工作原理,逻辑设计与实现方法,整机的互连技术,培养学生具有初步的硬件系统分析、设计、开发和使用的能力。具体内容包括:数制与码制、基本逻辑部件、运算方法与运算器、指令系统与寻址方式,中央处理器(CPU)的工作原理及设计方法。存储系统和输入/输出(I/O)系统等。通过该课程的学习,可以使学生较深地掌握单台计算机的组成及工作原理,进一步加深对先修课程的综合理解及灵活应用,为后继课程的学习建立坚实的基础知识。 3.微机接口技术: 本课程是计算机科学与技术专业学生必修的核心课程之一,它的先修课程为数字逻辑、计算机组成原理。本课程对于训练学生掌握硬件接口设计技术,熟悉微处理器和各种接口芯片的硬件设计和软件调试技术都有重要作用,在软件方面要求掌握汇编语言,在硬件方面要掌握中断、DMA、计数器/定时器等设计技术。通过该课程的学习使学生学会微机接口设计的基本方法和技能。 4.计算机系统结构: 计算机系统结构主要是研究高性能计算机组织与结构的课程。主要包括:计算机系统结构的基本概念、指令的流水处理与向量计算机、高性能微处理器技术、并行处理机结构及算法和多处理机技术。结合现代计算机系统结构的新发展,介绍近几年来计算机系统结构所出现的一些新概念和新技术。 5.数据库概论: 数据库已是计算机系本科生不可缺少的专业基础课,它是计算机应用的重要支柱之一。该课程讲授数据库技术的特点,数据库系统的结构,三种典型数据模型及系统(以关系型系统为主)、数据库规范化理论,数据库的设计与管理,以及数据库技术的新进展等。通过本课程学习,掌握基本概念、理论和方法,学会使用数据库管理系统设计和建立数据库的初步能力,为以后实现一个数据库管理系统及进行系统的理论研究打下基础。 6.算法与数据结构: “数据结构”是计算机程序设计的重要理论技术基础,是计算机科学与技术专业的必修课,是计算机学科其它专业课的先修课程。通过学习本课程使学生掌握数据结构的基本逻辑结构和存储结构及其基本算法的设计方法,并在实际应用中能灵活使用。学会分析研究数据对象的特性,选择合适的逻辑结构、存储结构及设计相应的算法。初步掌握算法的时空分析技巧,同时进行程序设计训练。使学生学会应用抽象数据类型概念进行抽象设计。主要内容有:线性表、链表、栈、队列、数组、广义表、树与二叉树、图、查找、排序、内存管理、文件存储管理。 7.离散数学: “离散数学”是计算机科学与技术专业必修课程,其主要内容包括:命题逻辑;一阶命题逻辑;集合、关系与映射;代数系统、布尔代数 ;图论等。这些内容为学习计算机专业课程,如编译原理、数据结构提供重要的理论工具,同时也是计算机应用不可缺少的理论基础。 离散数学主要培养学生对事物的抽象思维能力和逻辑推理能力,为今后处理离散信息,从事计算机软件的开发和设计,以及计算机的其它实际应用打好数学基础。 8.操作系统: 操作系统是现代计算机系统中不可缺少的重要组成部分。它的先修课程是数据结构和计算机基础,在此基础上讲解操作系统的主要内容:CPU管理、存储器管理、作业管理、I/O设备管理和文件管理。这些基本原理告诉人们作为计算机系统中各种资源的管理者和各种活动的组织者、指挥者,操作系统是如何使整个计算机系统有条不率地高效工作,以及它为用户使用计算机系统提供了哪些便利手段。掌握了这些知识,人们就会对计算机系统的总体框架、工作流程和使用方法有了一个全面的认识,就会清楚后续专业课程所述内容在计算机系统中所处的地位和作用,这样不仅便于理解后续课程内容,而且能使人们把计算机的各部分知识有机地联系起来。此外,由于多处理机系统和计算机网络的盛行,本课程中也包含了对多处理机操作系统和网络操作系统的概述,从而使学习者可以跟上计算机技术的发展速度。 9.数据通信与计算机网: 该课程主要介绍网络基本理论和网络最新实用技术,分基础理论、实用技术和新技术三部分进行讲述。主要讲解计算机网络的功能和组成,数据传输,链路控制,多路复用,差错检测,网络体系结构,网络分层协议及局域网、广域网等。要求学生掌握数据通信的基本原理和计算机网络的体系结构,打下坚实的理论基础,培养实际应用的能力,为今后从事计算机网络的科研和设计工作打下基础。 10.高级语言程序设计: 本课程介绍了C与C++的全集。它从语法入手,同时强调程序设计的基本方法,以使学生能在较短的时间内,掌握C语言的结构化程序设计方法与C++语言的面向对象程序设计方法。主要内容有:1、过程初步;2、过程组织和管理;3、C++的数据类型;4、类与对象;5、继承;6、I/O流。 11.软件工程: 软件工程课程是计算机专业的一门主要专业课程,是培养高水平软件研制和开发人员的一门重程。该课程主要介绍软件工程的概念、原理及典型的方法技术,进述软件生存周期各阶段的任务、过程、方法和工具,讨论了软件工程使用的科学管理技术。 12.数据库应用: 通过实践方式使学生进一步掌握数据库知识和技术,掌握C/S(客户/服务)模式下的大型数据库的设计与实现,培养同行间的合作精神,学习应用合作方法。 13.软件编程实践: 主要介绍最新的常规的软件编程平台、工具和方法。本课程面向应用技术和实用技术,培养学生自学新技术的能力,在WINDOWS下的综合编程能力,实际解决问题能力。 14.计算机网络工程: 计算机技术与通信技术相结合导致了计算机网络的产生。计算机网络已成为当今大型信息系统的基础。-------------------------高等数学、大学英语、概率统计、离散数学、电路、模拟电子、数字电子、数据结构、操作系统、编译原理、计算机网络、数据库原理、软件工程、汇编语言、C++程序设计、接口技术、Java、VC++、计算机病毒分析、信息安全、等。 高数学的是微积分,线性代数,概率论与数理统计。英语是大学英语上下。还有就是专业的计算机知识,数据分析,c语言,java,还有计算机的系统分析,各种软件技术,学会写代码,程序等。

琴瑟 2019-12-02 01:22:34 0 浏览量 回答数 0

回答

Reredis未设置密码报错errorERR operation not permitted 一,什么是overcommit or oom问题 Linux对大部分申请内存的请求都回复"yes",以便能跑更多更大的程序。因为申请内存后,并不会马上使用内存。这种技术叫做Overcommit。当linux发现内存不足时,会发生OOM killer(OOM=out-of-memory)。它会选择杀死一些进程(用户态进程,不是内核线程),以便释放内存。 当oom-killer发生时,linux会选择杀死哪些进程?选择进程的函数是oom_badness函数(在mm/oom_kill.c中),该函数会计算每个进程的点数(0~1000)。点数越高,这个进程越有可能被杀死。每个进程的点数跟oom_score_adj有关,而且oom_score_adj可以被设置(-1000最低,1000最高)。 内核参数overcommit_memory,它是 内存分配策略 可选值:0、1、2。 0, 表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程。 1, 表示内核允许分配所有的物理内存,而不管当前的内存状态如何。 2, 表示内核允许分配超过所有物理内存和交换空间总和的内存 二,出现的问题 redis运行一段时间后就挂掉了,ps查看进程没啥问题,查看redis的log,发现有warning,如下: [26145] 07 Dec 19:54:54 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. telnet到6379,任何操作都会返回not permitted, [root@localhost redis]# telnet 127.0.0.1 6379 Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is '^]'. keys * -ERR operation not permitted redis并没有设置requirepass,不可能是因为权限问题导致not permitted。 三,解决办法 1,修改内核参数,3种方法,任选其一: (1)编辑/etc/sysctl.conf ,改vm.overcommit_memory=1,然后sysctl -p 使配置文件生效 (2)sysctl vm.overcommit_memory=1 (3)echo 1 > /proc/sys/vm/overcommit_memory 2,修改redis.conf,然后重启redis maxmemory 5368709120 maxmemory-policy allkeys-lru maxmemory-samples 3 设置一下maxmemory,建议设置为物理内存的1/2到3/4,大小不要超过最大物理内存。

sendinfo 2019-12-02 01:17:26 0 浏览量 回答数 0

问题

ECS Linux Apache 有哪些常见启动错误及解决办法

boxti 2019-12-01 21:55:24 1219 浏览量 回答数 0

回答

从业余程序员到职业程序员 程序员刚入行时,我觉得最重要的是把自己培养成职业的程序员。 我的程序员起步比同龄人都晚了很多,更不用说现在的年轻人了。我大学读的是生物专业,在上大学前基本算是完全没接触过计算机。军训的时候因为很无聊,我和室友每天跑去学校的机房玩,我现在还印象很深刻,我第一次走进机房的时候,别人问,你是要玩windows,还是dos,我那是完全的一抹黑。后来就只记得在机房一堆人都是在练习盲打,军训完,盲打倒是练的差不多了,对计算机就这么产生了浓厚的兴趣,大一的时候都是玩组装机,捣鼓了一些,对计算机的硬件有了那么一些了解。 到大二后,买了一些书开始学习当时最火的网页三剑客,学会了手写HTML、PS的基本玩法之类的,课余、暑假也能开始给人做做网站什么的(那个时候做网站真的好赚钱),可能那样过了个一年左右,做静态的网页就不好赚钱了,也不好找实习工作,于是就开始学asp,写些简单的CRUD,做做留言板、论坛这些动态程序,应该算是在这个阶段接触编程了。 毕业后加入了深圳的一家做政府行业软件的公司,一个非常靠谱和给我空间的Leader,使得自己在那几年有了不错的成长,终于成了一个职业的程序员。 通常来说,业余或半职业的程序员,多数是1个人,或者很小的一个团队一起开发,使得在开发流程、协作工具(例如jira、cvs/svn/git等)、测试上通常会有很大的欠缺,而职业的程序员在这方面则会专业很多。另外,通常职业的程序员做的系统都要运行较长的时间,所以在可维护性上会特别注意,这点我是在加入阿里后理解更深的。一个运行10年的系统,和一个写来玩玩的系统显然是有非常大差别的。 这块自己感觉也很难讲清楚,只能说模模糊糊有个这样的概念。通常在有兴趣的基础上,从业余程序员跨越到成为职业程序员我觉得不会太难。 编程能力的成长 作为程序员,最重要的能力始终是编程能力,就我自己的感受而言,我觉得编程能力的成长主要有这么几个部分: 1、编程能力初级:会用 编程,首先都是从学习编程语言的基本知识学起的,不论是什么编程语言,有很多共同的基本知识,例如怎么写第一个Hello World、if/while/for、变量等,因此我比较建议在刚刚开始学一门编程语言的时候,看看编程语言自己的一些文档就好,不要上来就去看一些高阶的书。我当年学Java的时候上来就看Think in Java、Effective Java之类的,真心好难懂。 除了看文档以外,编程是个超级实践的活,所以一定要多写代码,只有这样才能真正熟练起来。这也是为什么我还是觉得在面试的时候让面试者手写代码是很重要的,这个过程是非常容易判断写代码的熟悉程度的。很多人会说由于写代码都是高度依赖IDE的,导致手写很难,但我绝对相信写代码写了很多的人,手写一段不太复杂的、可运行的代码是不难的。即使像我这种三年多没写过代码的人,让我现在手写一段不太复杂的可运行的Java程序,还是没问题的,前面N年的写代码生涯使得很多东西已经深入骨髓了。 我觉得编程能力初级这个阶段对于大部分程序员来说都不会是问题,勤学苦练,是这个阶段的核心。 2、编程能力中级:会查和避免问题 除了初级要掌握的会熟练的使用编程语言去解决问题外,中级我觉得首先是提升查问题的能力。 在写代码的过程中,出问题是非常正常的,怎么去有效且高效的排查问题,是程序员群体中通常能感受到的大家在编程能力上最大的差距。 解决问题能力强的基本很容易在程序员群体里得到很高的认可。在查问题的能力上,首先要掌握的是一些基本的调试技巧,好用的调试工具,在Java里有JDK自带的jstat、jmap、jinfo,不在JDK里的有mat、gperf、btrace等。工欲善其事必先利其器,在查问题上是非常典型的,有些时候大家在查问题时的能力差距,有可能仅仅是因为别人比你多知道一个工具而已。 除了调试技巧和工具外,查问题的更高境界就是懂原理。一个懂原理的程序员在查问题的水平上和其他程序员是有明显差距的。我想很多的同学应该能感受到,有些时候查出问题的原因仅仅是因为有效的工具,知其然不知其所以然。 我给很多阿里的同学培训过Java排查问题的方法,在这个培训里,我经常也会讲到查问题的能力的培养最主要的也是熟练,多尝试给自己写一些会出问题的程序,多积极的看别人是怎么查问题的,多积极的去参与排查问题,很多最后查问题能力强的人多数仅仅是因为“无他,但手熟尔”。 我自己排查问题能力的提升主要是在2009年和2010年。那两年作为淘宝消防队(处理各种问题和故障的虚拟团队)的成员,处理了很多的故障和问题。当时消防队还有阿里最公认的技术大神——多隆,我向他学习到了很多排查问题的技巧。和他比,我排查问题的能力就是初级的那种。 印象最深刻的是一次我们一起查一个应用cpu us高的问题,我们两定位到是一段代码在某种输入参数的时候会造成cpu us高的原因后,我能想到的继续查的方法是去生产环境抓输入参数,然后再用参数来本地debug看是什么原因。但多隆在看了一会那段代码后,给了我一个输入参数,我拿这个参数一运行,果然cpu us很高!这种case不是一次两次。所以我经常和别人说,我是需要有问题场景才能排查出问题的,但多隆是完全有可能直接看代码就能看出问题的,这是本质的差距。 除了查问题外,更厉害的程序员是在写代码的过程就会很好的去避免问题。大家最容易理解的就是在写代码时处理各种异常情况,这里通常也是造成程序员们之间很大的差距的地方。 写一段正向逻辑的代码,大部分情况下即使有差距,也不会太大,但在怎么很好的处理这个过程中有可能出现的异常上,这个时候的功力差距会非常明显。很多时候一段代码里处理异常逻辑的部分都会超过正常逻辑的代码量。 我经常说,一个优秀程序员和普通程序员的差距,很多时候压根就不需要看什么满天飞的架构图,而只用show一小段的代码就可以。 举一个小case大家感受下。当年有一个严重故障,最后查出的原因是输入的参数里有一个是数组,把这个数组里的值作为参数去查数据库,结果前面输入了一个很大的数组,导致从数据库查了大量的数据,内存溢出了,很多程序员现在看都会明白对入参、出参的保护check,但类似这样的case我真的碰到了很多。 在中级这个阶段,我会推荐大家尽可能的多刻意的去培养下自己这两个方面的能力,成为一个能写出高质量代码、有效排查问题的优秀程序员。 3、编程能力高级:懂高级API和原理 就我自己的经历而言,我是在写了多年的Java代码后,才开始真正更细致的学习和掌握Java的一些更高级的API,我相信多数Java程序员也是如此。 我算是从2003年开始用Java写商业系统的代码,但直到在2007年加入淘宝后,才开始非常认真地学习Java的IO通信、并发这些部分的API。尽管以前也学过也写过一些这样的代码,但完全就是皮毛。当然,这些通常来说有很大部分的原因会是工作的相关性,多数的写业务系统的程序员可能基本就不需要用到这些,所以导致会很难懂这些相对高级一些的API,但这些API对真正的理解一门编程语言,我觉得至关重要。 在之前的程序员成长路线的文章里我也讲到了这个部分,在没有场景的情况下,只能靠自己去创造场景来学习好。我觉得只要有足够的兴趣,这个问题还是不大的,毕竟现在有各种开源,这些是可以非常好的帮助自己创造机会学习的,例如学Java NIO,可以自己基于NIO包一个框架,然后对比Netty,看看哪些写的是不如Netty的,这样会非常有助于真正的理解。 在学习高级API的过程中,以及排查问题的过程中,我自己越来越明白懂编程语言的运行原理是非常重要的,因此我到了后面的阶段开始学习Java的编译机制、内存管理、线程机制等。对于我这种非科班出身的而言,学这些会因为缺乏基础更难很多,但这些更原理性的东西学会了后,对自己的编程能力会有质的提升,包括以后学习其他编程语言的能力,学这些原理最好的方法我觉得是先看看一些讲相关知识的书,然后去翻看源码,这样才能真正的更好的掌握,最后是在以后写代码的过程中、查问题的过程中多结合掌握的原理,才能做到即使在N年后也不会忘。 在编程能力的成长上,我觉得没什么捷径。我非常赞同1万小时理论,在中级、高级阶段,如果有人指点或和优秀的程序员们共事,会好非常多。不过我觉得这个和读书也有点像,到了一定阶段后(例如高中),天分会成为最重要的分水岭,不过就和大部分行业一样,大部分的情况下都还没到拼天分的时候,只需要拼勤奋就好。 系统设计能力的成长 除了少数程序员会进入专深的领域,例如Linux Kernel、JVM,其他多数的程序员除了编程能力的成长外,也会越来越需要在系统设计能力上成长。 通常一个编程能力不错的程序员,在一定阶段后就会开始承担一个模块的工作,进而承担一个子系统、系统、跨多领域的更大系统等。 我自己在工作的第三年开始承担一个流程引擎的设计和实现工作,一个不算小的系统,并且也是当时那个项目里的核心部分。那个阶段我学会了一些系统设计的基本知识,例如需要想清楚整个系统的目标、模块的划分和职责、关键的对象设计等,而不是上来就开始写代码。但那个时候由于我是一个人写整个系统,所以其实对设计的感觉并还没有那么强力的感觉。 在那之后的几年也负责过一些系统,但总体感觉好像在系统设计上的成长没那么多,直到在阿里的经历,在系统设计上才有了越来越多的体会。(点击文末阅读原文,查看:我在系统设计上犯过的14个错,可以看到我走的一堆的弯路)。 在阿里有一次做分享,讲到我在系统设计能力方面的成长,主要是因为三段经历,负责专业领域系统的设计 -> 负责跨专业领域的专业系统的设计 -> 负责阿里电商系统架构级改造的设计。 第一段经历,是我负责HSF。HSF是一个从0开始打造的系统,它主要是作为支撑服务化的框架,是个非常专业领域的系统,放在整个淘宝电商的大系统来看,其实它就是一个很小的子系统,这段经历里让我最深刻的有三点: 1).要设计好这种非常专业领域的系统,专业的知识深度是非常重要的。我在最早设计HSF的几个框的时候,是没有设计好服务消费者/提供者要怎么和现有框架结合的,在设计负载均衡这个部分也反复了几次,这个主要是因为自己当时对这个领域掌握不深的原因造成的; 2). 太技术化。在HSF的阶段,出于情怀,在有一个版本里投入了非常大的精力去引进OSGi以及去做动态化,这个后来事实证明是个非常非常错误的决定,从这个点我才真正明白在设计系统时一定要想清楚目标,而目标很重要的是和公司发展阶段结合; 3). 可持续性。作为一个要在生产环境持续运行很多年的系统而言,怎么样让其在未来更可持续的发展,这个对设计阶段来说至关重要。这里最low的例子是最早设计HSF协议的时候,协议头里竟然没有版本号,导致后来升级都特别复杂;最典型的例子是HSF在早期缺乏了缺乏了服务Tracing这方面的设计,导致后面发现了这个地方非常重要后,全部落地花了长达几年的时间;又例如HSF早期缺乏Filter Chain的设计,导致很多扩展、定制化做起来非常不方便。 第二段经历,是做T4。T4是基于LXC的阿里的容器,它和HSF的不同是,它其实是一个跨多领域的系统,包括了单机上的容器引擎,容器管理系统,容器管理系统对外提供API,其他系统或用户通过这个来管理容器。这个系统发展过程也是各种犯错,犯错的主要原因也是因为领域掌握不深。在做T4的日子里,学会到的最重要的是怎么去设计这种跨多个专业领域的系统,怎么更好的划分模块的职责,设计交互逻辑,这段经历对我自己更为重要的意义是我有了做更大一些系统的架构的信心。 第三段经历,是做阿里电商的异地多活。这对我来说是真正的去做一个巨大系统的架构师,尽管我以前做HSF的时候参与了淘宝电商2.0-3.0的重大技术改造,但参与和自己主导是有很大区别的,这个架构改造涉及到了阿里电商众多不同专业领域的技术团队。在这个阶段,我学会的最主要的: 1). 子系统职责划分。在这种超大的技术方案中,很容易出现某些部分的职责重叠和冲突,这个时候怎么去划分子系统,就非常重要了。作为大架构师,这个时候要从团队的职责、团队的可持续性上去选择团队; 2). 大架构师最主要的职责是控制系统风险。对于这种超大系统,一定是多个专业领域的架构师和大架构师共同设计,怎么确保在执行的过程中对于系统而言最重要的风险能够被控制住,这是我真正的理解什么叫系统设计文档里设计原则的部分。 设计原则我自己觉得就是用来确保各个子系统在设计时都会遵循和考虑的,一定不能是虚的东西,例如在异地多活架构里,最重要的是如何控制数据风险,这个需要在原则里写上,最基本的原则是可接受系统不可用,但也要保障数据一致,而我看过更多的系统设计里设计原则只是写写的,或者千篇一律的,设计原则切实的体现了架构师对目标的理解(例如当时异地多活这个其实开始只是个概念,但做到什么程度才叫做到异地多活,这是需要解读的,也要确保在技术层面的设计上是达到了目标的),技术方案层面上的选择原则,并确保在细节的设计方案里有对于设计原则的承接以及执行; 3). 考虑问题的全面性。像异地多活这种大架构改造,涉及业务层面、各种基础技术层面、基础设施层面,对于执行节奏的决定要综合考虑人力投入、机器成本、基础设施布局诉求、稳定性控制等,这会比只是做一个小的系统的设计复杂非常多。 系统设计能力的成长,我自己觉得最重要的一是先在一两个技术领域做到专业,然后尽量扩大自己的知识广度。例如除了自己的代码部分外,还应该知道具体是怎么部署的,部署到哪去了,部署的环境具体是怎么样的,和整个系统的关系是什么样的。 像我自己,是在加入基础设施团队后才更加明白有些时候软件上做的一个决策,会导致基础设施上巨大的硬件、网络或机房的投入,但其实有可能只需要在软件上做些调整就可以避免,做做研发、做做运维可能是比较好的把知识广度扩大的方法。 第二点是练习自己做tradeoff的能力,这个比较难,做tradeoff这事需要综合各种因素做选择,但这也是所有的架构师最关键的,可以回头反思下自己在做各种系统设计时做出的tradeoff是什么。这个最好是亲身经历,听一些有经验的架构师分享他们选择背后的逻辑也会很有帮助,尤其是如果恰好你也在同样的挑战阶段,光听最终的架构结果其实大多数时候帮助有限。 技术Leader我觉得最好是能在架构师的基础上,后续注重成长的方面还是有挺大差别,就不在这篇里写了,后面再专门来写一篇。 程序员金字塔 我认为程序员的价值关键体现在作品上,被打上作品标签是一种很大的荣幸,作品影响程度的大小我觉得决定了金字塔的层次,所以我会这么去理解程序员的金字塔。 当然,要打造一款作品,仅有上面的两点能力是不够的,作品里很重要的一点是对业务、技术趋势的判断。 希望作为程序员的大伙,都能有机会打造一款世界级的作品,去为技术圈的发展做出贡献。 由于目前IT技术更新速度还是很快的,程序员这个行当是特别需要学习能力的。我一直认为,只有对程序员这个职业真正的充满兴趣,保持自驱,才有可能在这个职业上做好,否则的话是很容易淘汰的。 作者简介: 毕玄,2007年加入阿里,十多年来主要从事在软件基础设施领域,先后负责阿里的服务框架、Hbase、Sigma、异地多活等重大的基础技术产品和整体架构改造。

茶什i 2020-01-10 15:19:35 0 浏览量 回答数 0

问题

【精品问答】Java技术1000问(1)

问问小秘 2019-12-01 21:57:43 38419 浏览量 回答数 12

问题

UNIX/Linux系统取证之信息采集案例

opensiem 2019-12-01 21:46:20 2034 浏览量 回答数 1
阿里云大学 云服务器ECS com域名 网站域名whois查询 开发者平台 小程序定制 小程序开发 国内短信套餐包 开发者技术与产品 云数据库 图像识别 开发者问答 阿里云建站 阿里云备案 云市场 万网 阿里云帮助文档 免费套餐 开发者工具 企业信息查询 小程序开发制作 视频内容分析 企业网站制作 视频集锦 代理记账服务 2020阿里巴巴研发效能峰会 企业建站模板 云效成长地图 高端建站