• 关于

    视频数据可以做什么

    的搜索结果

回答

取决于你要做什么业务了。不过ECS、RDS之类的是少不了的,不管什么系统都少不了计算和存储。再进一步: 如果要做视频内容,CDN、对象存储一类可能会需要。 如果要做大数据,云数据库HBase之类应该用得上。 如果是复杂的业务系统,可以考虑诸如容器服务类的运维/调度产品,简化运维、发布成本。

gavinx 2019-12-02 01:58:01 0 浏览量 回答数 0

问题

ios上socket通信问题(已解决,并附上解决方式)

a123456678 2019-12-01 20:27:44 1101 浏览量 回答数 1

回答

我觉得有三个维度,第一是说人工智能AI的技术来智能化的管控平台。我们现在数据库实例非常多,系统处理也变得越来越复杂。像NoSQL、OLTP、OLAP,要处理结构化数据,同时也要处理非结构化数据等等。在阿里,管理云上超过了几十万的实例数,集团内也有几十万的实例数,如何去高效和管理这么多的数据库实例?异常发现、异常检测、Slow SQL、MySQL、内存管理等这些都是依赖人工智能技术的。比如说在阿里巴巴集团内部用机器学习和人工智能技术实时去采集所有实例运行的状态,把它的IO/CPO的使用率和它的Workload的特点,去在线建模做8份大小的调整,每一个数据库的实例它是4G、8G、16G。为什么要做这件事?因为随着它一天Workload的变化,它实际上不需要在一天内的任何时候都需要一个非常大的Buffer,可能高峰Buffer要扩,等到峰值过去后Buffer可以缩下来,这样的话就可以把内存资源做一个动态调度。 第二是在内核里面。比如说做内存管理和做查询优化,现在业界也在开始使用一些机器学习的方法。传统使用一些简单的统计方法来做一些内存管理、做查询优化、Buffer Management,比如说LRU 或者 MRU这种非常简单的方式。现在可以看到有一些人工智能和机器学习的方法来做更复杂但是更智能化的、高效的智能化管理,以及CBO这是查询优化里很重要的一块。 第三个维度是说在数据库的应用层,需要对非结构化的数据进行处理,除了结构化的数据。比如说在ADB里面就把非结构化数据先做一个转换,把它从非结构化数据转化到高纬的向量,比如说用 embeddng把这种文档或者是图像甚至像视频都可以把他们映射到一个高维的空间里面,这样的话做一个向量处理引擎,就能把这种非结构化数据变成高维向量,再通过这些高维向量处理引擎把这些非结构化数据和结构化数据在一个数据库引擎里进行联合的查询和分析。这就是用数据库系统来支持AI机器学习和数据处理和 Workload。 总结来讲有两个维度AI或DB,就是机器学习和人工智能技术使得数据库系统更高效、更可靠、更好用。另外一个是DB或AI,就是用数据库的系统来支持机器学习和人工智能的处理。

问问小秘 2020-05-22 11:52:43 0 浏览量 回答数 0

Quick BI 数据可视化分析平台

2020年入选全球Gartner ABI魔力象限,为中国首个且唯一入选BI产品

问题

我用把视屏上传到OSS服务器,并在自己的服务器上存了OSS返回的url,使用这个url在网页端播放不了,这是为什么?我该怎么解决?

彤彤爸爸 2019-12-01 20:28:18 1719 浏览量 回答数 1

问题

调用查询媒体-使用OSS文件地址 返回信息是0

石头子 2019-12-01 19:26:59 996 浏览量 回答数 2

问题

如何实现秒级搭建视频网站?

元芳 2019-12-01 21:18:18 4631 浏览量 回答数 5

回答

Re我想做一个视频服务器大家指点一下? 抛开政策方面的问题,单从技术上来说的话。 你这100人同时在线播放的是属于视频播放还是在线视频聊天那种? 如果是视频播放的话,由涉及两个问题了。首先是转码的问题,你是打算客户端本地转马后再上传还是在服务器上转码?如果是服务器上转码,cpu越强劲越好,没有上限。如果你们自己开发能力强,可以多搞几台8核CPU,这样可以同时支持更多的服务器转码服务。服务器主要就是耗费在转马上了,网站本身倒不是多费服务器。 至于带宽问题,这要看你们自己技术实力了,如果实力强带宽可以压缩到最小。比如用swf作为播放器,开发P2P的视频流数据传输功能,既然你有在线100人同时观看的情况,那完全可以利用P2P来加速并省带宽。然后是视频的分段切割分段加载,不要一次性加载完整个视频,一部分一部分的加载视频内容,看多少加载多少,这样服务器在转码的时候就需要把视频切割开,比如每5分钟一段。如果什么优化都不做,完全靠服务器带宽硬抗,一部720P质量的H264编码视频就需要6M左右的带宽,同时100个人播放,那就得至少500M的带宽了吧。

第一应用 2019-12-02 01:02:58 0 浏览量 回答数 0

回答

区别: 一、概念不同 1、数据是信息的表现形式和载体,可以是符号、文字、数字、语音、图像、视频等。 2、知识是符合文明方向的,人类对物质世界以及精神世界探索的结果总和。 二、特点不同 1、数据 数据可以是连续的值,比如声音、图像,称为模拟数据。也可以是离散的,如符号、文字,称为数字数据。 2、知识 1)隐性特征 说明:知识具备较强的隐蔽性,需要进行归纳、总结、提炼。 2)行动导向特征 说明:知识能够直接推动人的决策和行为,加速行动过程。 三、分类不同 1、数据 按性质分为 ①定位的,如各种坐标数据。 ②定性的,如表示事物属性的数据(居民地、河流、道路等)。 ③定量的,反映事物数量特征的数据,如长度、面积、体积等几何量或重量、速度等物理量。 ④定时的,反映事物时间特性的数据,如年、月、日、时、分、秒等。 2、知识 ①知道是什么的知识( Know - what) ,主要是叙述事实方面的知识。 ②知道为什么的知识(Know - why) ,主要是自然原理和规律方面的知识。 ③知道怎么做的知识(Know - how) ,主要是指对某些事物的技能和能力。 ④知道是谁的知识(Know - who) ,涉及谁知道和谁知道如何做某些事的知识。 联系: (1)数据是对客观事物记录下来的、可以鉴别的符号,这些符号不仅指数字,而且包括字符、文字、图形等等;数据经过处理仍然是数据。处理数据是为了便于更好地解释,只有经过解释,数据才有意义,才成为信息;可以说信息是经过加工以后、并对客观世界产生影响的数据。 (2)在管理过程中,同一数据,每个人的解释可能不同,其对决策的影响可能不同。结果,决策者利用经过处理的数据做出决策,可能取得成功,也可能失败,这里的关键在于对数据的解释是否正确,即:是否正确地运用知识对数据做出解释,以得到准确的信息。

保持可爱mmm 2019-12-02 03:09:41 0 浏览量 回答数 0

问题

点播和播放器下载需要的参数的区别

樰篱 2019-12-01 21:04:15 2751 浏览量 回答数 1

问题

移动元年短视频、直播爆发,又将出现什么样的转码格式?

爵霸 2019-12-01 21:58:15 2521 浏览量 回答数 0

回答

您好! 1 不能执行数据盘挂载具体报错是什么? windows磁盘挂载请参考: http://help.aliyun.com/view/11108189_13435491.html?spm=5176.7224601.1997282865.5.zeRe7H 2 请参考windows2008视频文档: http://help.aliyun.com/view/11108189_13495140.html?spm=5176.7224605.1997283473.6.BJ4seF 3 安装前不需要做什么步骤,保证服务器外网能链接就行。安装完成后,测试FTP IIS是否正常。 4 如果不熟悉环境搭建可以选择镜像系统,环境都是搭建好的。 ------------------------- 回 4楼(新人迭戈) 的帖子 您好! 您购买的数据盘确实是5G。 安装完成web后,就可以使用FTP上传网站了。 镜像系统是第三方提供的。如果要使用镜像系统,可以在控制面板里先停止ECS运行,然后选择更换系统,里面可以选择镜像市场里的镜像系统。(提示:更换操作系统会导致系统盘原有数据丢失,如果有数据需要提前备份)

阿里云支持与服务 2019-12-02 00:56:59 0 浏览量 回答数 0

回答

C*设计主要不是做对象存储的,视频也可以当blob存进去,但是理论限制最大每个2G 需要分成多个chunk data,如果存成一个超大blob的话,你的读取时间是不可接受的,这个design适用于任何的database,也不针对Cassandra, Netflix就用Cassandra存储视频 meta表存chunkId list, data表存data chunk。前端搞个httpserver,对于大文件做定长chunk切分。不推荐存大对象,c*本质上还是KV系统。开源对象存储可以参考ceph 如果存成2gb or whatever size,你的读取时间是不可接受的,这个和什么database的关系不大的,你的client端也handle不了一次读取2GB的数据 这种东西要看你的业务情况,你的业务对延时,服务可用性要求低,没啥问题,hdfs直接丢进去就好了。ceph的话,你要是有这个能力cover住这也没毛病。 但是如果你的业务对延时要求,服务可用性要求较高,类似一个在线服务的话,可以用cassandra,至少我们之前的云盘在线业务存视频,文档等,一天长传个100T ,用cassandra也是轻轻松松无压力。 这个要根据你的业务场景来规划,不能随便yy一下就下结论。

小六码奴 2019-12-02 02:03:58 0 浏览量 回答数 0

回答

对于第一题,你还是先找些jsp视频看下,会比我们这些用文字描述的要好理解些,因为你问了个需要用什么软件。第二题,去搜httpclient.........。祝你好运######元方也是这样看的######同意楼上的###### 同意楼上的。 -------------------------------- 第一题,就是考察两个知识点: 登陆验证,数据分页。 至于说用什么软件,就是看你的爱好了。 你说的MSSQL2000是数据库了,这个是可以的,当然你也可以使用其他的数据库(mysql什么的等等)。 myeclipse等等就是开发工具。 首先你得理清思路啊。别把自己给搞混了。 1、你先来个login.jsp页面。上面放个账号密码输入框,然后自己再写个servlet,把账号提交到servlet,在servlet中,根据t1表的数据做个判断。是否允许登陆。 2、再来个info.jsp页面。登陆成功后就跳转到info.jsp页面,然后自己做个分页显示就可以了。 ------------------------------------第二题 需要自己实现http 请求就可以了。具体的可以参考网络爬虫什么的,或者找httpcilent。 ----------------------------------------------------------------------- 用什么软件不是重要的,重要的是你要理解这些问题背后的技术原理。 多找点资料看看吧。希望可以帮助到你。 ###### 谢谢大家.有没有可以写出具体代码的给我参考一下..我知道用得什么软件不重要 只要你会用,我只想知道,大家写出代码之后,需要什么软件去运行..我这里有MyEclipse..其实他的题目还有一题现场安装jdk6.0,tomcat6.0,eclipse,MSSQL2000..是不是需要用到这里面的软件 ###### 引用来自“陈源区”的答案 谢谢大家.有没有可以写出具体代码的给我参考一下..我知道用得什么软件不重要 只要你会用,我只想知道,大家写出代码之后,需要什么软件去运行..我这里有MyEclipse..其实他的题目还有一题现场安装jdk6.0,tomcat6.0,eclipse,MSSQL2000..是不是需要用到这里面的软件 元芳问:你是毕业生吧? ###### 对~~ ######这两个题都不会 建议还是先别找工作了 再学学吧######放弃吧###### 面试官我认识的..教下我如何做就行了- -! ######大四学弟表示很简单,毫无压力。。学长在校期间是否做过项目呢?比如简单的留言板或网络爬虫

kun坤 2020-06-06 11:57:50 0 浏览量 回答数 0

问题

我新手,重来没接触过电脑后台的数据知识,有些问题要问,求解答

药必须停 2019-12-01 21:56:52 6650 浏览量 回答数 5

问题

HiTSDB高性能时间序列数据库产品解析

福利达人 2019-12-01 21:09:24 4058 浏览量 回答数 0

回答

OSS主要为用户提供数据存储服务,用户可以通过以下操作来处理OSS上的数据: 1、创建、查看、罗列、删除 Bucket; 2、修改、获取Bucket的访问权限; 3、上传、查看、罗列、删除Object/Object Group; 4、访问时支持If-Modified-Since和If-Match等HTTP参数。 特点具体如下: 1、易用性:简单易用,便于管理,深度集成数据处理服务; 2、高可靠:多重冗余备份,服务设计可用性不低于99.99%; 3、强安全:多层次安全防护,支持跨区域复制、异地容灾机制; 4、低成本:总体TCO更低,生命周期管理进一步降低成本。 OSS是阿里云提供的云存储服务,并可无限扩展。 OSS 能做什么? 可以在任何应用、任何时间、任何地点存储和访问任意类型的数据。 OSS 适合存储什么? OSS 适合存储论坛网站与软件应用中的附件、高清图片、音视频、备份文件等,以及各种APP应用、多终端同步软件、网盘下载站的文件。 OSS 适合谁用? OSS 适合社区、多媒体分享站、电子商务等各类形式规模的网站站长,APP应用和软件应用开发者,游戏开发企业以及有大规模数据存储需求的用户使用。 想了解更多可以参考: 阿里云对象存储存储类型对比,OSS价格详情总览

养狐狸的猫 2019-12-02 02:13:34 0 浏览量 回答数 0

问题

数据库百问,教你快速上手数据库

yq传送门 2019-12-01 20:16:46 31116 浏览量 回答数 21

回答

在PaaS层中一个复杂的通用应用就是大数据平台。大数据是如何一步一步融入云计算的呢?首先我们来看一下大数据里面的数据,就分三种类型,一种叫结构化的数据,一种叫非结构化的数据,还有一种叫半结构化的数据。 大数据拥抱云计算 在PaaS层中一个复杂的通用应用就是大数据平台。大数据是如何一步一步融入云计算的呢? 1 数据不大也包含智慧 一开始这个大数据并不大。原来才有多少数据?现在大家都去看电子书,上网看新闻了,在我们80后小时候,信息量没有那么大,也就看看书、看看报,一个星期的报纸加起来才有多少字?如果你不在一个大城市,一个普通的学校的图书馆加起来也没几个书架,是后来随着信息化的到来,信息才会越来越多。 首先我们来看一下大数据里面的数据,就分三种类型,一种叫结构化的数据,一种叫非结构化的数据,还有一种叫半结构化的数据。 结构化的数据:即有固定格式和有限长度的数据。例如填的表格就是结构化的数据,国籍:中华人民共和国,民族:汉,性别:男,这都叫结构化数据。 非结构化的数据:现在非结构化的数据越来越多,就是不定长、无固定格式的数据,例如网页,有时候非常长,有时候几句话就没了;例如语音,视频都是非结构化的数据。 半结构化数据:是一些XML或者HTML的格式的,不从事技术的可能不了解,但也没有关系。 其实数据本身不是有用的,必须要经过一定的处理。例如你每天跑步带个手环收集的也是数据,网上这么多网页也是数据,我们称为Data。数据本身没有什么用处,但数据里面包含一个很重要的东西,叫做信息(Information)。 数据十分杂乱,经过梳理和清洗,才能够称为信息。信息会包含很多规律,我们需要从信息中将规律总结出来,称为知识(Knowledge),而知识改变命运。信息是很多的,但有人看到了信息相当于白看,但有人就从信息中看到了电商的未来,有人看到了直播的未来,所以人家就牛了。如果你没有从信息中提取出知识,天天看朋友圈也只能在互联网滚滚大潮中做个看客。 所以数据的应用分这四个步骤:数据、信息、知识、智慧。 最终的阶段是很多商家都想要的。你看我收集了这么多的数据,能不能基于这些数据来帮我做下一步的决策,改善我的产品。例如让用户看视频的时候旁边弹出广告,正好是他想买的东西;再如让用户听音乐时,另外推荐一些他非常想听的其他音乐。 用户在我的应用或者网站上随便点点鼠标,输入文字对我来说都是数据,我就是要将其中某些东西提取出来、指导实践、形成智慧,让用户陷入到我的应用里面不可自拔,上了我的网就不想离开,手不停地点、不停地买。 很多人说双十一我都想断网了,我老婆在上面不断地买买买,买了A又推荐B,老婆大人说,“哎呀,B也是我喜欢的啊,老公我要买”。你说这个程序怎么这么牛,这么有智慧,比我还了解我老婆,这件事情是怎么做到的呢? 2 数据如何升华为智慧 数据的处理分几个步骤,完成了才最后会有智慧。 第一个步骤叫数据的收集。首先得有数据,数据的收集有两个方式: 第一个方式是拿,专业点的说法叫抓取或者爬取。例如搜索引擎就是这么做的:它把网上的所有的信息都下载到它的数据中心,然后你一搜才能搜出来。比如你去搜索的时候,结果会是一个列表,这个列表为什么会在搜索引擎的公司里面?就是因为他把数据都拿下来了,但是你一点链接,点出来这个网站就不在搜索引擎它们公司了。比如说新浪有个新闻,你拿百度搜出来,你不点的时候,那一页在百度数据中心,一点出来的网页就是在新浪的数据中心了。 第二个方式是推送,有很多终端可以帮我收集数据。比如说小米手环,可以将你每天跑步的数据,心跳的数据,睡眠的数据都上传到数据中心里面。 第二个步骤是数据的传输。一般会通过队列方式进行,因为数据量实在是太大了,数据必须经过处理才会有用。可系统处理不过来,只好排好队,慢慢处理。 第三个步骤是数据的存储。现在数据就是金钱,掌握了数据就相当于掌握了钱。要不然网站怎么知道你想买什么?就是因为它有你历史的交易的数据,这个信息可不能给别人,十分宝贵,所以需要存储下来。 第四个步骤是数据的处理和分析。上面存储的数据是原始数据,原始数据多是杂乱无章的,有很多垃圾数据在里面,因而需要清洗和过滤,得到一些高质量的数据。对于高质量的数据,就可以进行分析,从而对数据进行分类,或者发现数据之间的相互关系,得到知识。 比如盛传的沃尔玛超市的啤酒和尿布的故事,就是通过对人们的购买数据进行分析,发现了男人一般买尿布的时候,会同时购买啤酒,这样就发现了啤酒和尿布之间的相互关系,获得知识,然后应用到实践中,将啤酒和尿布的柜台弄的很近,就获得了智慧。 第五个步骤是对于数据的检索和挖掘。检索就是搜索,所谓外事不决问Google,内事不决问百度。内外两大搜索引擎都是将分析后的数据放入搜索引擎,因此人们想寻找信息的时候,一搜就有了。 另外就是挖掘,仅仅搜索出来已经不能满足人们的要求了,还需要从信息中挖掘出相互的关系。比如财经搜索,当搜索某个公司股票的时候,该公司的高管是不是也应该被挖掘出来呢?如果仅仅搜索出这个公司的股票发现涨的特别好,于是你就去买了,其实其高管发了一个声明,对股票十分不利,第二天就跌了,这不坑害广大股民么?所以通过各种算法挖掘数据中的关系,形成知识库,十分重要。 3 大数据时代,众人拾柴火焰高 当数据量很小时,很少的几台机器就能解决。慢慢的,当数据量越来越大,最牛的服务器都解决不了问题时,怎么办呢?这时就要聚合多台机器的力量,大家齐心协力一起把这个事搞定,众人拾柴火焰高。 对于数据的收集:就IoT来讲,外面部署这成千上万的检测设备,将大量的温度、湿度、监控、电力等数据统统收集上来;就互联网网页的搜索引擎来讲,需要将整个互联网所有的网页都下载下来。这显然一台机器做不到,需要多台机器组成网络爬虫系统,每台机器下载一部分,同时工作,才能在有限的时间内,将海量的网页下载完毕。 对于数据的传输:一个内存里面的队列肯定会被大量的数据挤爆掉,于是就产生了基于硬盘的分布式队列,这样队列可以多台机器同时传输,随你数据量多大,只要我的队列足够多,管道足够粗,就能够撑得住。 对于数据的存储:一台机器的文件系统肯定是放不下的,所以需要一个很大的分布 式文件系统来做这件事情,把多台机器的硬盘打成一块大的文件系统。 对于数据的分析:可能需要对大量的数据做分解、统计、汇总,一台机器肯定搞不定,处理到猴年马月也分析不完。于是就有分布式计算的方法,将大量的数据分成小份,每台机器处理一小份,多台机器并行处理,很快就能算完。例如著名的Terasort对1个TB的数据排序,相当于1000G,如果单机处理,怎么也要几个小时,但并行处理209秒就完成了。 所以说什么叫做大数据?说白了就是一台机器干不完,大家一起干。可是随着数据量越来越大,很多不大的公司都需要处理相当多的数据,这些小公司没有这么多机器可怎么办呢? 4 大数据需要云计算,云计算需要大数据 说到这里,大家想起云计算了吧。当想要干这些活时,需要很多的机器一块做,真的是想什么时候要就什么时候要,想要多少就要多少。 例如大数据分析公司的财务情况,可能一周分析一次,如果要把这一百台机器或者一千台机器都在那放着,一周用一次非常浪费。那能不能需要计算的时候,把这一千台机器拿出来;不算的时候,让这一千台机器去干别的事情? 谁能做这个事儿呢?只有云计算,可以为大数据的运算提供资源层的灵活性。而云计算也会部署大数据放到它的PaaS平台上,作为一个非常非常重要的通用应用。因为大数据平台能够使得多台机器一起干一个事儿,这个东西不是一般人能开发出来的,也不是一般人玩得转的,怎么也得雇个几十上百号人才能把这个玩起来。 所以说就像数据库一样,其实还是需要有一帮专业的人来玩这个东西。现在公有云上基本上都会有大数据的解决方案了,一个小公司需要大数据平台的时候,不需要采购一千台机器,只要到公有云上一点,这一千台机器都出来了,并且上面已经部署好了的大数据平台,只要把数据放进去算就可以了。 云计算需要大数据,大数据需要云计算,二者就这样结合了。 人工智能拥抱大数据 机器什么时候才能懂人心 虽说有了大数据,人的欲望却不能够满足。虽说在大数据平台里面有搜索引擎这个东西,想要什么东西一搜就出来了。但也存在这样的情况:我想要的东西不会搜,表达不出来,搜索出来的又不是我想要的。 例如音乐软件推荐了一首歌,这首歌我没听过,当然不知道名字,也没法搜。但是软件推荐给我,我的确喜欢,这就是搜索做不到的事情。当人们使用这种应用时,会发现机器知道我想要什么,而不是说当我想要时,去机器里面搜索。这个机器真像我的朋友一样懂我,这就有点人工智能的意思了。 人们很早就在想这个事情了。最早的时候,人们想象,要是有一堵墙,墙后面是个机器,我给它说话,它就给我回应。如果我感觉不出它那边是人还是机器,那它就真的是一个人工智能的东西了。 让机器学会推理 怎么才能做到这一点呢?人们就想:我首先要告诉计算机人类的推理的能力。你看人重要的是什么?人和动物的区别在什么?就是能推理。要是把我这个推理的能力告诉机器,让机器根据你的提问,推理出相应的回答,这样多好? 其实目前人们慢慢地让机器能够做到一些推理了,例如证明数学公式。这是一个非常让人惊喜的一个过程,机器竟然能够证明数学公式。但慢慢又发现其实这个结果也没有那么令人惊喜。因为大家发现了一个问题:数学公式非常严谨,推理过程也非常严谨,而且数学公式很容易拿机器来进行表达,程序也相对容易表达。 教给机器知识 因此,仅仅告诉机器严格的推理是不够的,还要告诉机器一些知识。但告诉机器知识这个事情,一般人可能就做不来了。可能专家可以,比如语言领域的专家或者财经领域的专家。 语言领域和财经领域知识能不能表示成像数学公式一样稍微严格点呢?例如语言专家可能会总结出主谓宾定状补这些语法规则,主语后面一定是谓语,谓语后面一定是宾语,将这些总结出来,并严格表达出来不就行了吗?后来发现这个不行,太难总结了,语言表达千变万化。 人工智能这个阶段叫做专家系统。专家系统不易成功,一方面是知识比较难总结,另一方面总结出来的知识难以交给计算机。因为你自己还迷迷糊糊,觉得似乎有规律,就是说不出来,又怎么能够通过编程教给计算机呢? 算了,教不会你自己学吧 于是人们想到:机器是和人完全不一样的物种,干脆让机器自己学习好了。

茶什i 2019-12-31 13:13:50 0 浏览量 回答数 0

问题

ASP无组件上传的原理上传图片,视频,工具包等

服务器插件 2019-12-01 21:51:20 5405 浏览量 回答数 1

问题

SAP上云——助力制造业数字化转型

福利达人 2019-12-01 21:09:17 2793 浏览量 回答数 0

问题

第一期亲宝宝 -- 0维护人员,轻松玩转TB级数据

pittman03 2019-12-01 21:43:42 33454 浏览量 回答数 35

回答

为何要用Node.js?现在是寻找如何替代Node.js吗? ###### 后台还行. 前台你换成这俩完全就是没事儿找事儿. 用个html + jstemplate什么的就行了. ###### 不要犹豫了,jfinal走起 ######nginx+JFinal+ Tomcat + EhCache + Redis,如果访问量还是撑不住,再加 CDN 和 varnish。前端用 js 做对搜索引擎收录不利######回复 @西夏一品堂 : OSChina 日访问IP超过50万,两台服务器,用的就是EhCache+Redis,可看看这里:http://www.oschina.net/p/j2cache,视频介绍:http://v.youku.com/v_show/id_XNzAzMTY5MjUy.html######回复 @西夏一品堂 : EhCache 是本 JVM 去内存取数据,速度非常快,而 Redis 需要序列化与反序列化,还需要进程之间传递数据,如果redis部署在其它服务器,还需要走网络传输######有redis了,还用EhCache干啥?######前端用 js 做对搜索引擎收录不利######加 varnish就必须要考虑页面的动静分离,以及缓存的清除、过期、更新。另外你的系统是什么类型的呢,是网站呢,还是业务系统。memorycache和redis都可以做缓存,为什么要两个同时用呢?两种分别用来做什么?

kun坤 2020-05-29 23:05:09 0 浏览量 回答数 0

回答

1.产品2.UI3.CSS4.JS5.后端(Java/php/python)6.DBA(mysql/oracle)7.运维(OP) 8.测试(QA)9.算法(分类/聚类/关系抽取/实体识别)10.搜索(Lucene/Solr/elasticSearch)11.大数据工程师(Hadoop)12.Android13.IOS14.运营 一.产品1 工作内容:了解用户需求,做竞品调研,画产品原型,写产品文档,讲解产品需求,测试产品Bug,收集用户反馈,苦练金刚罩以防止程序员拿刀砍。2 需要技能:PPT,Word, Axure,XP,MVP,行业知识,沟通。 二. UI1 工作内容:收到产品原型,给原型上色,偶尔会自作主张调整下原型的位置,出不同的风格给老板和客户选,然后听他们的意见给出一个自己极不喜欢的风格,最好给Android,IOS或者是CSS做好标注,还有的需要直接帮他们切好图,最后要练出来象素眼,看看这些不靠谱的程序员们有没有上错色或者是有偏差。2 需要技能:PS,Illustrator,Sketch,耐性,找素材。 三. CSS1 工作内容:产品设计好原型,UI做出来了效果图,剩下的就是CSS工程师用代码把静态文件写出来的。 2 需要技能:环境【IDE(WEBStorm,Sublime,EditPlus),源码管理(SVN/Git) ,WEB服务器(nginx)】基础【PS,域名,Html,Html5,CSS,CSS3】扩展【自适应,响应式,Bootstrap,Less,Flex】 四 .JS 1 工作内容:JS工程师其实分成两类,在之前讲CSS的时候已经提到过,一个是套页面的,一个是前后端分离的。对这两个概念还是分不太清的,可以回过头去看CSS的部分。 2 需要技能:环境【IDE(WEBStorm,Sublime,EditPlus),源码管理(SVN/Git) ,WEB服务器(nginx)】基础【Http,REST,跨域,语法,组件,F12,Json,Websocket】框架【JQuery,AngularJS,Bower,RequireJS,GruntJS,ReactJS,PhoneGap】业务【金融,教育,医疗,汽车,房产等等等等各种行业】 五 .后端(Java/python/go) 1 工作内容:大部分的后端工程师都停留在功能实现的层面上。这是现在国内二流或者是三流的公司的现状,甚至是在某些一流的公司。很多时候都是架构师出了架构设计,更多的外包公司根本就是有DBA来做设计,然后后端程序员从JS到CSS到Java全写,完全就是一个通道,所有的复杂逻辑全部交给DB来做,这也是几年前DBA很受重视的原因。 2 需要技能:环境【IDE(Idea/Eclipse,Maven,jenkins,Nexus,Jetty,Shell,Host),源码管理(SVN/Git) ,WEB服务器(nginx,tomcat,Resin)】基础【Http,REST,跨域,语法,Websocket,数据库,计算机网络,操作系统,算法,数据结构】框架【Spring,AOP,Quartz,Json TagLib,tiles,activeMQ,memcache,redis,mybatis,log4j,junit等等等等等】业务【金融,教育,医疗,汽车,房产等等等等各种行业】。 六 .DBA  1 工作内容:如果你做了一个DBA,基本上会遇到两种情况。一种是你的后端工程师懂架构,知道怎么合便使用DB,知道如何防止穿透DB,那么恭喜你,你只是需要当一个DB技术兜底的顾问就好,基本上没什么活可以做,做个监控,写个统计就好了。你可以花时间在MongoDB了,Hadoop了这些,随便玩玩儿。再按照我之前说的,做好数据备份。如果需求变动比较大,往往会牵涉到一些线上数据的更改,那么就在发布的时候安静的等着,等着他们出问题。。。。如果不出问题就可以回家睡觉了。 2 需要技能:环境【Linux,Mysql,Oracle,MongoDB,Hadoop】工具【各种DB的版本,工具,备份,日志等】。 七. 运维  1 工作内容:运维的工作大概分成几个部分,我对于修真院学习运维的少年们都这么说,大概是:A。基础环境的搭建和常用软件的安装和配置(兼网管的还有各种程控机),常用软件指的是SVN,Git,邮箱这种,更细节的内容请参考修真院对于运维职业的介绍。B。日常的发布和维护,如刚刚讲到的一样,测试环境和线上环境的发布和记录,原则上,对线上所有的变更都应该有记录。C。数据的备份和服务的监控&安全配置。各种数据,都要做好备份和回滚的手段,提前准备好各种紧急预案,服务的监制要做好。安全始终都是不怎么被重点考虑的问题,因为这个东西无底洞,你永远不知道做到什么程度算是比较安全了,所以大多数都是看着情况来。D。运维工具的编写。这一点在大的云服务器商里格外常见,大公司也是一样的。E。Hadoop相关的大数据体系架构的运维,确实有公司在用几百台机器做Hadoop,所以虽然不常见,我还是列出来吧。 2 需要技能:环境【Linux,Mysql,Oracle,MongoDB,Hadoop,nginx,apache,F5,lvs,vpn,iptable,svn,git,memcache,redis】工具【linux 常用工具,Mysql常用工具,Jenkins,zabbix,nagios】自动化运维【openstack,docker,ansible】语言【shell,python】 八 .QA  1 工作内容:QA需要了解需求,很多公司会要求QA写测试用例,我觉得是扯淡。完全是在浪费时间。通常开发三周,QA测试的时间只有一周到一周半。还有关于提前写测试用例的,都不靠谱。 2 需要技能:流程【Bug修复流程,版本发布流程】工具【禅道,BugZilla,Jira,Excel表格来统计Bug数,自动化测试】性格【严谨,耐心】 九. 算法工程师  1 工作内容:算法工程师的工作内容,大部分时间都是在调优。就是调各种参数和语料,寻找特征,验证结果,排除噪音。也会和Hadoop神马的打一些交道,mahout神马的,我那个时候还在用JavaML。现在并不知道有没有什么更好用的工具了。有的时候还要自己去标注语料---当然大部分人都不爱做这个事儿,会找漂亮的小编辑去做。2 需要技能:基础【机器学习,数据挖掘】工具【Mahout,JavaML等其他的算法工具集】 十. 搜索工程师  1 工作内容: 所以搜索现在其实分成两种。一种是传统的搜索。包括:A。抓取 B。解析C。去重D。处理E。索引F。查询另一种是做为架构的搜索。并不包括之前的抓取解析去重,只有索引和查询。A。索引B。查询 2 需要技能:环境【Linux】框架【Luence,Slor,ElasticSearch,Cassandra,MongoDB】算法【倒排索引,权重计算公式,去重算法,Facet搜索的原理,高亮算法,实时索引】 十一. 大数据工程师  1 工作内容:工作内容在前期会比较多一些,基础搭建还是一个挺讲究的事儿。系统搭建好之后呢,大概是两种,一种是向大数据部门提交任务,跑一圈给你。一种是持续的文本信息处理中增加新的处理模块,像我之前说的增加个分类啦,实体识别神马的。好吧第一种其实我也不记得是从哪得来的印象了,我是没有见到过的。架构稳定了之后,大数据部门的工作并不太多,常常会和算法工程师混到一起来。其他的应该就是大数据周边产品的开发工作了。再去解决一些Bug什么的。2 需要技能:环境【Linux】框架【Hadoo,spark,storm,pig,hive,mahout,zookeeper 】算法【mapreduce,hdfs,zookeeper】。 十二. Android工程师  1 工作内容:Android工程师的日常就是听产品经理讲需求,跟后端定接口,听QA反馈哪款机器不兼容,闹着申请各种测试机,以及悲催的用Android做IOS的控件。 2 需要技能:环境【Android Studio,Maven,Gradle】基础【数据结构,Java,计算机网络】组件【IM,地图,支付,拍照,视频,音频,统计,分享,手势密码】 十三. IOS工程师  1 工作内容:IOS工程师的工作内容真的挺简单的,听需求,定接口。做个适配,抛弃一下iphone4。还有啥。。马丹,以我为数不多的IOS知识来讲,真的不知道还有啥了。我知道的比较复杂的系统也是各种背景高斯模糊,各种渐变,各种图片滤镜处理,其他并没有什么。支付,地图,统计这些东西。 嗯。2 需要技能:环境【Xcode】基础【数据结构,Object,计算机网络】组件【IM,地图,支付,拍照,视频,音频,统计,分享,手势密码】

行者武松 2019-12-02 01:21:45 0 浏览量 回答数 0

问题

词汇表是什么样的?(S-V)

轩墨 2019-12-01 22:06:08 2089 浏览量 回答数 0

回答

不幸的是,上一张幻灯片介绍的情况也会在这里出现,比如这是所有车的集合,如果你只合成这些车中很小的子集,对于人眼来说也许这样合成图像没什么问题,但你的学习算法可能会对合成的这一个小子集过拟合。特别是很多人都独立提出了一个想法,一旦你找到一个电脑游戏,里面车辆渲染的画面很逼真,那么就可以截图,得到数量巨大的汽车图片数据集。事实证明,如果你仔细观察一个视频游戏,如果这个游戏只有20辆独立的车,那么这游戏看起来还行。因为你是在游戏里开车,你只看到这20辆车,这个模拟看起来相当逼真。但现实世界里车辆的设计可不只20种,如果你用着20量独特的车合成的照片去训练系统,那么你的神经网络很可能对这20辆车过拟合,但人类很难分辨出来。即使这些图像看起来很逼真,你可能真的只用了所有可能出现的车辆的很小的子集。 所以,总而言之,如果你认为存在数据不匹配问题,我建议你做错误分析,或者看看训练集,或者看看开发集,试图找出,试图了解这两个数据分布到底有什么不同,然后看看是否有办法收集更多看起来像开发集的数据作训练。 我们谈到其中一种办法是人工数据合成,人工数据合成确实有效。在语音识别中。我已经看到人工数据合成显著提升了已经非常好的语音识别系统的表现,所以这是可行的。但当你使用人工数据合成时,一定要谨慎,要记住你有可能从所有可能性的空间只选了很小一部分去模拟数据。

因为相信,所以看见。 2020-05-20 17:32:53 0 浏览量 回答数 0

回答

你貌似是做那种类似新闻的文章吧,这个问题应该没必要这么纠结,我推荐你使用CKEDITOR吧,不熟悉编辑器的话,这个还可以,而且dedecms那个后台添加文章的内容的时候也是用的这个编辑器(他就支持你图文并茂的效果,好像还有视频之类的,这个是官网:http://ckeditor.com/,你去看下吧) 简单说下怎么用吧,先下载到解压放到你的站点中去。 一、引用CKEDITOR的JS文件 <script type="text/javascript" src="ckeditor/ckeditor.js"></script> 注意:1.src的路径。 2.不要写成<script type="text/javascript" src="ckeditor/ckeditor.js />样式,在现有的3.0.1版本中会出现CKEDITOR未定义的脚本错误提示,致使不能生成编辑器。 二、替换TEXTAREA标签: <textarea rows="30" cols="50" name="editor01">请输入.</textarea> <script type="text/javascript">CKEDITOR.replace('editor01');</script> 正常情况下,你应该之前只用了个textarea。注意:要在textarea后面加入javascript.如果要在HEAD区写javasript,那么采用如下代码: <script type="text/javascript"> window.onload = function(){ CKEDITOR.replace( 'editor01' ); }; </script> 好了到此一个默认的CKEDITOR就配置完毕了,可以去页面看看它的模样了,至于其他的扩展属性配置我就不说多了,你自己去官网看手册了个性化配置。三、下面就是要说下怎么保存数据了 其实跟你正常使用textarea的时候是一样的直接使用:$_POST['editor01'],这里的editor0也就是你那个textarea的名字。 <?php //接值,当然你可以用htmlspecialchars转下也行 $editor01 = $_POST['editor01']; //插入数据到数据库 $sql = "INSERT INTO 表 (字段1,字段2,内容字段)VALUES('字段一的值','字段2的值','{$editor01}')"; mysql_query($sql); ?> 然后你在前台读取数据的时候把读出来的数组用print_r()打印出来不就知道数据结构了。估计你纠结的是不是要把那些图片用二进制什么的存起来吧?一般也没比较去把图片、视频转换成二进制的了再存到数据库去,我们只需要知道它们存放的路径就行了,而这个编辑器提交后的post数据就是只存它们的路径。 不知道你明白没有?希望采纳。

小旋风柴进 2019-12-02 02:03:53 0 浏览量 回答数 0

问题

开发必看-阿里云API精选手册(100+ 阿里云自有产品与云生态API精选)

仙游 2019-12-01 22:00:57 3285 浏览量 回答数 2

回答

基础:比如计算机系统、算法、编译原理等等 Web开发: 主要是Web开发相关的内容,包括HTML/CSS/JS(前端页面)、Servlet/JSP(J2EE)以及Mysql(数据库)相关的知识。它们的学习顺序应该是从前到后,因此最先学习的应该是HTML/CSS/JS(前端页面),这部分内容你可以去上面的那个runoob网站上找。J2EE:你需要学习的是Servlet/JSP(J2EE)部分,这部分是Java后端开发必须非常精通的部分,因此这部分是这三部分中最需要花精力的。关于Servlet/Jsp部分视频的选择,业界比较认可马士兵的视频 。最后一步,你需要学会使用数据库,mysql是个不错的入门选择,而且Java领域里主流的关系型数据库就是mysql。这部分一般在你学习Servlet/Jsp的时候,就会接触到的,其中的JDBC部分就是数据库相关的部分。你不仅要学会使用JDBC操作数据库,还要学会使用数据库客户端工具,比如navicat,sqlyog,二选一即可。开发框架:目前比较主流的是SSM框架,即spring、springmvc、mybatis。你需要学会这三个框架的搭建,并用它们做出一个简单的增删改查的Web项目。你可以不理解那些配置都是什么含义,以及为什么要这么做,这些留着后面你去了解。但你一定要可以快速的利用它们三个搭建出一个Web框架,你可以记录下你第一次搭建的过程,相信我,你一定会用到的。还要提一句的是,你在搭建SSM的过程中,可能会经常接触到一个叫maven的工具。这个工具也是你以后工作当中几乎是必须要使用的工具,所以你在搭建SSM的过程中,也可以顺便了解一下maven的知识。在你目前这个阶段,你只需要在网络上了解一下maven基本的使用方法即可,一些高端的用法随着你工作经验的增加,会逐渐接触到的。在这一年里,你至少需要看完《Java编程思想》这本书。这本书的内容是帮助你对于Java有一个更加深入的了解,是Java基础的升级版。 总而言之,这个阶段的核心学习思想就是,在工作中实践,并且更加深入的了解Java基础。对于参加工作1年到2年的同学。这部分时间段的同学,已经对Java有了一个更加深入的了解。但是对于面向对象的体会可能还不够深刻,编程的时候还停留在完成功能的层次,很少会去考虑设计的问题。于是这个时候,设计模式就来了。我当时看的是《大话设计模式》这本书,并且写了完整版的设计模式博客。因此,我要求大家,最多在你工作一年的时候,必须开始写博客,而设计模式就是你博客的开端。此外,设计模式并不是你这一年唯一的任务,你还需要看一些关于代码编写优化的书。比如《重构 改善既有代码的设计》,《effective java》。总而言之,这个阶段,你的核心任务就是提高你的代码能力,要能写出一手优雅的代码。对于参加工作2年到3年的同学有的同学在这个时候觉得自己已经很牛逼了,于是忍不住开始慢慢松懈。请记住,你还嫩的多。这个阶段,有一本书是你必须看的,它叫做《深入理解Java虚拟机》。这本书绝对是Java开发者最重要的书,没有之一。在我眼里,这本书的重要性还要高于《Java编程思想》。这本书的内容是帮助你全面的了解Java虚拟机,在这个阶段,你一定已经知道Java是运行在JVM之上的。所以,对于JVM,你没有任何理由不了解它。这个时候,你应该去更加深入的了解并发相关的知识,而这部分内容,我比较推荐《Java并发编程实战》这本书。只要你把这本书啃下来了,并发的部分基本已经了解了十之六七。与此同时,这个阶段你要做的事情还远不止如此。这个时候,你应该对于你所使用的框架应该有了更深入的了解,对于Java的类库也有了更深入的了解。因此,你需要去看一些JDK中的类的源码,也包括你所使用的框架的源码。这些源码能看懂的前提是,你必须对设计模式非常了解。否则的话,你看源码的过程中,永远会有这样那样的疑问,这段代码为什么要这么写?为什么要定义这个接口,它看起来好像很多余?由此也可以看出,这些学习的过程是环环相扣的,如果你任何一个阶段拉下来了,那么你就真的跟不上了,或者说是一步慢步步慢。而且我很负责的告诉你,我在这个阶段的时候,所学习的东西远多于这里所罗列出来的。总而言之,这个阶段,你需要做的是深入了解Java底层和Java类库(比如并发那本书就是Java并发包java.concurrent的内容),也就是JVM和JDK的相关内容。而且还要更深入的去了解你所使用的框架,方式比较推荐看源码或者看官方文档。另外,还有一种学习的方式,在2年这个阶段,也应该启用了,那就是造轮子。不要听信那套“不要重复造轮子”的论调,那是公司为了节省时间成本编造出来的。重复造轮子或许对别人没有价值,因为你造的轮子可能早就有了,而且一般情况下你造出来的轮子还没有现存的好。  但是对别人没有价值,不代表对你自己没有价值。一个造轮子的过程,是一个从无到有的过程。这个过程可以对你进行系统的锻炼,它不仅考察你的编码能力,还考察你的框架设计能力,你需要让你的轮子拥有足够好的扩展性、健壮性。而且在造轮子的过程中,你会遇到各种各样的难题,这些难题往往又是你学习的契机。当你把轮子造好的时候,你一定会发现,其实你自己收获了很多。所以,这个阶段,除了上面提到的了解JVM、JDK和框架源码以外,也请你根据别人优秀的源码,去造一个任何你能够想象出来的轮子。第四部分:参加工作3年到4年的同学这个阶段的同学,提升已经是很难了,而且这个阶段的学习往往会比较多样化。因为在前3年的过程中,你肯定或多或少接触过一些其它的技术,比如大数据、分布式缓存、分布式消息服务、分布式计算、软负载均衡等等。这些技术,你能精通任何一项,都将是你未来面试时巨大的优势,因此如果你对某一项技术感兴趣的话,  这个时候可以深入去研究一下。这项技术不一定是你工作所用到的,但一定是相关的。而且在研究一门新技术时,切忌朝三暮四。有的同学今天去整整大数据,搞搞Hadoop、hbase一类的东西。过不了一段时间,就觉得没意思,又去研究分布式缓存,比如redis。然后又过不了一段时间,又去研究分布式计算,比如整整Mapreduce或者storm。结果到最后,搞得自己好像什么都会一样,在简历上大言不惭的写上大数据、分布式缓存、分布式计算都了解,其实任何一个都只是浮于表面。到时候面试官随便一问,就把你给识破了。我比较推崇的基础书籍有三本,分别是《深入理解计算机系统》,《tcp/ip详解 卷一、二、三》,《数据结构与算法》。其中TCP/IP有三本书,但我们这里把这三本看成是一本大书。这三本分别适合三种人,《深入理解计算机系统》比较适合一直从事Java Web开发和APP后端开发工作的人群。《tcp/ip详解 卷一、二、三》比较适合做网络编程的人群,比如你使用netty去开发的话,那么就要对TCP/IP有更深入的了解。而《数据结构与算法》这本书,则比较适合做计算研究工作的人,比如刚才提到的分布式计算。另外,我要强调的是,这里所说的适合,并不是其它两本对你就没有用。比如你做Java Web和APP后端开发,《tcp/ip详解 卷一、二、三》这本书对你的作用也是很大的。这里只是分出个主次关系而已,你要是时间足够的话,能把三本都精读那当然最好不过了。第五部分:参加工作4年到5年的同学经过前面一年的历练,相信你在自己所钻研的领域已经有了自己一定的见解,这个时候,技术上你应该已经遇到瓶颈了。这个时候不要着急提高自己的技术,已经是时候提高你的影响力了,你可以尝试去一些知名的公司去提高你的背景,你可以发表一些文章去影响更多的人。当然,你也可以去Github创建一个属于你的开源项目,去打造自己的产品。  这次的开源项目不同于之前的造轮子,你这个时候是真的要去尽量尝试造出来真正对别人有价值的轮子。技术学到这个阶段,很容易遇到瓶颈,而且往往达到一定程度后,你再深入下去的收效就真的微乎其微了,除非你是专门搞学术研究的。然而很可惜,大部分程序猿做不到这一步,那是科学家做的事情。这个时候提高影响力不仅仅是因为技术上容易遇到瓶颈,更多的是影响力可以给你创造更多的机会。程序猿在某种程度上和明星很像,一个好的电视剧和电影就可以成就一批明星,程序猿有的时候也是,一个好的项目就可以成就一群程序猿。比如国内几个脍炙人口的项目,像淘宝、支付宝、QQ、百度、微信等等。这每一个项目,都成就了一批程序猿。我敢说,这里面任何一个项目,如果你是它的核心开发,光是这样一个Title,就已经是你非常大的优势。更何况还不止如此,Title说到底也是个名头,更重要的是,这种项目在做的时候,对你的历练一定也是非常给力的。

hiekay 2019-12-02 01:40:04 0 浏览量 回答数 0

回答

基础:比如计算机系统、算法、编译原理等等 Web开发: 主要是Web开发相关的内容,包括HTML/CSS/JS(前端页面)、Servlet/JSP(J2EE)以及Mysql(数据库)相关的知识。它们的学习顺序应该是从前到后,因此最先学习的应该是HTML/CSS/JS(前端页面),这部分内容你可以去上面的那个runoob网站上找。J2EE:你需要学习的是Servlet/JSP(J2EE)部分,这部分是Java后端开发必须非常精通的部分,因此这部分是这三部分中最需要花精力的。关于Servlet/Jsp部分视频的选择,业界比较认可马士兵的视频 。最后一步,你需要学会使用数据库,mysql是个不错的入门选择,而且Java领域里主流的关系型数据库就是mysql。这部分一般在你学习Servlet/Jsp的时候,就会接触到的,其中的JDBC部分就是数据库相关的部分。你不仅要学会使用JDBC操作数据库,还要学会使用数据库客户端工具,比如navicat,sqlyog,二选一即可。开发框架:目前比较主流的是SSM框架,即spring、springmvc、mybatis。你需要学会这三个框架的搭建,并用它们做出一个简单的增删改查的Web项目。你可以不理解那些配置都是什么含义,以及为什么要这么做,这些留着后面你去了解。但你一定要可以快速的利用它们三个搭建出一个Web框架,你可以记录下你第一次搭建的过程,相信我,你一定会用到的。还要提一句的是,你在搭建SSM的过程中,可能会经常接触到一个叫maven的工具。这个工具也是你以后工作当中几乎是必须要使用的工具,所以你在搭建SSM的过程中,也可以顺便了解一下maven的知识。在你目前这个阶段,你只需要在网络上了解一下maven基本的使用方法即可,一些高端的用法随着你工作经验的增加,会逐渐接触到的。在这一年里,你至少需要看完《Java编程思想》这本书。这本书的内容是帮助你对于Java有一个更加深入的了解,是Java基础的升级版。 总而言之,这个阶段的核心学习思想就是,在工作中实践,并且更加深入的了解Java基础。对于参加工作1年到2年的同学。这部分时间段的同学,已经对Java有了一个更加深入的了解。但是对于面向对象的体会可能还不够深刻,编程的时候还停留在完成功能的层次,很少会去考虑设计的问题。于是这个时候,设计模式就来了。我当时看的是《大话设计模式》这本书,并且写了完整版的设计模式博客。因此,我要求大家,最多在你工作一年的时候,必须开始写博客,而设计模式就是你博客的开端。此外,设计模式并不是你这一年唯一的任务,你还需要看一些关于代码编写优化的书。比如《重构 改善既有代码的设计》,《effective java》。总而言之,这个阶段,你的核心任务就是提高你的代码能力,要能写出一手优雅的代码。对于参加工作2年到3年的同学有的同学在这个时候觉得自己已经很牛逼了,于是忍不住开始慢慢松懈。请记住,你还嫩的多。这个阶段,有一本书是你必须看的,它叫做《深入理解Java虚拟机》。这本书绝对是Java开发者最重要的书,没有之一。在我眼里,这本书的重要性还要高于《Java编程思想》。这本书的内容是帮助你全面的了解Java虚拟机,在这个阶段,你一定已经知道Java是运行在JVM之上的。所以,对于JVM,你没有任何理由不了解它。这个时候,你应该去更加深入的了解并发相关的知识,而这部分内容,我比较推荐《Java并发编程实战》这本书。只要你把这本书啃下来了,并发的部分基本已经了解了十之六七。与此同时,这个阶段你要做的事情还远不止如此。这个时候,你应该对于你所使用的框架应该有了更深入的了解,对于Java的类库也有了更深入的了解。因此,你需要去看一些JDK中的类的源码,也包括你所使用的框架的源码。这些源码能看懂的前提是,你必须对设计模式非常了解。否则的话,你看源码的过程中,永远会有这样那样的疑问,这段代码为什么要这么写?为什么要定义这个接口,它看起来好像很多余?由此也可以看出,这些学习的过程是环环相扣的,如果你任何一个阶段拉下来了,那么你就真的跟不上了,或者说是一步慢步步慢。而且我很负责的告诉你,我在这个阶段的时候,所学习的东西远多于这里所罗列出来的。总而言之,这个阶段,你需要做的是深入了解Java底层和Java类库(比如并发那本书就是Java并发包java.concurrent的内容),也就是JVM和JDK的相关内容。而且还要更深入的去了解你所使用的框架,方式比较推荐看源码或者看官方文档。另外,还有一种学习的方式,在2年这个阶段,也应该启用了,那就是造轮子。不要听信那套“不要重复造轮子”的论调,那是公司为了节省时间成本编造出来的。重复造轮子或许对别人没有价值,因为你造的轮子可能早就有了,而且一般情况下你造出来的轮子还没有现存的好。  但是对别人没有价值,不代表对你自己没有价值。一个造轮子的过程,是一个从无到有的过程。这个过程可以对你进行系统的锻炼,它不仅考察你的编码能力,还考察你的框架设计能力,你需要让你的轮子拥有足够好的扩展性、健壮性。而且在造轮子的过程中,你会遇到各种各样的难题,这些难题往往又是你学习的契机。当你把轮子造好的时候,你一定会发现,其实你自己收获了很多。所以,这个阶段,除了上面提到的了解JVM、JDK和框架源码以外,也请你根据别人优秀的源码,去造一个任何你能够想象出来的轮子。第四部分:参加工作3年到4年的同学这个阶段的同学,提升已经是很难了,而且这个阶段的学习往往会比较多样化。因为在前3年的过程中,你肯定或多或少接触过一些其它的技术,比如大数据、分布式缓存、分布式消息服务、分布式计算、软负载均衡等等。这些技术,你能精通任何一项,都将是你未来面试时巨大的优势,因此如果你对某一项技术感兴趣的话,  这个时候可以深入去研究一下。这项技术不一定是你工作所用到的,但一定是相关的。而且在研究一门新技术时,切忌朝三暮四。有的同学今天去整整大数据,搞搞Hadoop、hbase一类的东西。过不了一段时间,就觉得没意思,又去研究分布式缓存,比如redis。然后又过不了一段时间,又去研究分布式计算,比如整整Mapreduce或者storm。结果到最后,搞得自己好像什么都会一样,在简历上大言不惭的写上大数据、分布式缓存、分布式计算都了解,其实任何一个都只是浮于表面。到时候面试官随便一问,就把你给识破了。我比较推崇的基础书籍有三本,分别是《深入理解计算机系统》,《tcp/ip详解 卷一、二、三》,《数据结构与算法》。其中TCP/IP有三本书,但我们这里把这三本看成是一本大书。这三本分别适合三种人,《深入理解计算机系统》比较适合一直从事Java Web开发和APP后端开发工作的人群。《tcp/ip详解 卷一、二、三》比较适合做网络编程的人群,比如你使用netty去开发的话,那么就要对TCP/IP有更深入的了解。而《数据结构与算法》这本书,则比较适合做计算研究工作的人,比如刚才提到的分布式计算。另外,我要强调的是,这里所说的适合,并不是其它两本对你就没有用。比如你做Java Web和APP后端开发,《tcp/ip详解 卷一、二、三》这本书对你的作用也是很大的。这里只是分出个主次关系而已,你要是时间足够的话,能把三本都精读那当然最好不过了。第五部分:参加工作4年到5年的同学经过前面一年的历练,相信你在自己所钻研的领域已经有了自己一定的见解,这个时候,技术上你应该已经遇到瓶颈了。这个时候不要着急提高自己的技术,已经是时候提高你的影响力了,你可以尝试去一些知名的公司去提高你的背景,你可以发表一些文章去影响更多的人。当然,你也可以去Github创建一个属于你的开源项目,去打造自己的产品。  这次的开源项目不同于之前的造轮子,你这个时候是真的要去尽量尝试造出来真正对别人有价值的轮子。技术学到这个阶段,很容易遇到瓶颈,而且往往达到一定程度后,你再深入下去的收效就真的微乎其微了,除非你是专门搞学术研究的。然而很可惜,大部分程序猿做不到这一步,那是科学家做的事情。这个时候提高影响力不仅仅是因为技术上容易遇到瓶颈,更多的是影响力可以给你创造更多的机会。程序猿在某种程度上和明星很像,一个好的电视剧和电影就可以成就一批明星,程序猿有的时候也是,一个好的项目就可以成就一群程序猿。比如国内几个脍炙人口的项目,像淘宝、支付宝、QQ、百度、微信等等。这每一个项目,都成就了一批程序猿。我敢说,这里面任何一个项目,如果你是它的核心开发,光是这样一个Title,就已经是你非常大的优势。更何况还不止如此,Title说到底也是个名头,更重要的是,这种项目在做的时候,对你的历练一定也是非常给力的。

hiekay 2019-12-02 01:38:44 0 浏览量 回答数 0

问题

【直播回顾】21天搭建推荐系统:实现“千人千面”个性化推荐(含视频)

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