后台技术

学了C++不知道怎么搞后台开发?先看看这份学习路线吧!

♀尐吖头ヾ 提交于 2020-03-01 15:41:47
作者: AJ 在去年结束的秋季招聘中,后台开发或服务器开发的岗位需求一度火热,甚至超过了算法岗。不少同学从诸神黄昏的算法岗战场上退下,转向更偏向工程能力的后台开发岗,从而造成后台开发岗位竞争的大爆发。 后台开发工程师主流使用的编程语言有C++、Java、PHP以及目前慢慢流行的Golang等。本文就将以C++的角度,讲讲如何学习和准备后台开发的岗位。 一、语言基础 无论是C++开发还是Java开发,对于一个码农而言,最重要的就是对于编程语言的熟悉。同样,无论从事哪种类型的岗位,首当其冲的就是要掌握好语言基础。 C++是一门博大精深的编程语言,不仅拥有继承于C语言的过程化程序设计思想,还包含有面对对象(OOP)的设计理念。强大而又复杂。相对来说,C++的学习成本较高,语言里面的坑较多。语言基础的学习路线如下: 1 语法基础 重点掌握:(务必熟悉底层机制原理) 指针和引用的概念 指针与内存关系 程序编译过程 static、const、#define的用法和区别 C和C++区别 内存模型 内存中的栈和堆分配 2 面对对象基础 (务必熟悉底层机制原理) 面向对象理解 析构函数 构造函数 拷贝构造 多态 纯虚函数和虚函数 虚函数实现机制 虚函数表 访问限定符 public、private、protected 继承原理、虚继承、菱形继承 静态绑定和动态绑定 new/delete和malloc

实用,Windows后台守护进程iNeuDaemon发布。Linux操作系统下使用使用supervisor

青春壹個敷衍的年華 提交于 2020-02-27 23:04:57
目 录 1. 概述... 1 2. iNeuDaemon部署... 2 3. iNeuDaemon配置监控服务项... 3 4. 应用效果... 3 1. 概述 iNeuDaemon是Windows平台后台守护进程,用于监测服务进程,如果出现异常退出、远程运维重新启动等场景,那么可以部署iNeuDaemon后台守护进程,唤醒实时运行的服务。 主要为iNeuOS云操作系统用户提供必要运维方面的工具,以减少人工操作。如果是Linux下应用守护进程,那么可以使用supervisor工具。 iNeuOS云操作系统试用地址: http://demo.ineuos.net 。自己注册用户。 iNeuOS系统介绍参见: https://www.cnblogs.com/lsjwq/p/12019515.html 。 下载地址: https://pan.baidu.com/s/1nxpnC7FazBBVyK9zUFgjyg 下iNeuKernel 2.3版本,在目录有 iNeuDaemon 工具。 2. iNeuDaemon部署 目录文件,如下图: 右键单击“install.bat”或“uninstall.bat”,以【管理员】方式运行,如下图: 安装成功之后,如下图: 3. iNeuDaemon配置监控服务项 在根目录有“daemon.cfg”配置文件,主要配置监测项目的进程名称和路径,如下图:

后台架构的演变

孤街醉人 提交于 2020-02-27 10:55:18
码农小光 的文章的记录 单机架构 第一次演进:Tomcat与数据库分开部署 第二次演进:引入本地缓存和分布式缓存 第三次演进:引入反向代理实现负载均衡 第四次演进:数据库读写分离 第五次演进:数据库按业务分库 第六次演进:把大表拆分为小表 第七次演进:使用LVS或F5来使多个Nginx负载均衡 第八次演进:通过DNS轮询实现机房间的负载均衡 第九次演进:引入NoSQL数据库和搜索引擎等技术 第十次演进:大应用拆分为小应用 第十一次演进:复用的功能抽离成微服务 第十二次演进:引入企业服务总线ESB屏蔽服务接口的访问差异 第十三次演进:引入容器化技术实现运行环境隔离与动态服务管理 第十四次演进:以云平台承载系统 总结: IaaS:基础设施即服务。对应于上面所说的机器资源统一为资源整体,可动态申请硬件资源的层面; PaaS:平台即服务。对应于上面所说的提供常用的技术组件方便系统的开发和维护; SaaS:软件即服务。对应于上面所说的提供开发好的应用或服务,按功能或性能要求付费。 至此:以上所提到的从高并发访问问题,到服务的架构和系统实施的层面都有了各自的解决方案。但同时也应该意识到,在上面的介绍中,其实是有意忽略了诸如跨机房数据同步、分布式事务实现等等的实际问题,这些问题以后有机会再拿出来单独讨论。 4、架构设计总结 1)架构的调整是否必须按照上述演变路径进行? 不是的

后台开发的语言优缺点比较

时间秒杀一切 提交于 2020-02-26 03:48:10
目前一般公司的后台用的开发语言大概有以下几种:java,python,php,asp.net,c++,rubyon rails 等等。 java 优点:性能好,适合大中项目,跨平台,安全性高,稳定可靠,运行效率高(尤其是JIT的出现之后差距更大了),不容易犯错(强类型、预编译、必须拦截异常等等),能有效地提高复用度,提升性能和吞吐能力,能规避安全问题。 缺点:开发复杂,开发和发布的效率相对较低,维护成本高,开发人员费用高 python 优点:简单易学,开发快,语言简洁,易于维护,开源,可移植,可扩展 缺点: 速度慢,格式强制,容易犯错 php: 优点:灵活,上手快,易修改,发布快捷,环境好部署 缺点:容易犯错,行效率不高,缺乏全局缓存 ruby on rails 优点:快速开发,使用者多,开发控件非常丰富 缺点:性能差,第三方包少 asp.net 优点:跨语言, 中小型项目上性能好,开发快,适合windows平台,维护成本低 缺点:代码逻辑混乱,难于管理,代码的可重用性差 国内的大公司偏业务的一般都用 Java 做后台开发比如淘宝,网易,美团等. Python国内一般是一些体量不是这么大的公司使用,例如豆瓣,知乎等。其实,各种语言都有优缺点,没有哪一种是绝对好的。各公司也不是单单只使用一种后台语言,都是结合起来开发的。上述的各种语言的优缺点也是相对的

后台开发的语言优缺点比较

痴心易碎 提交于 2020-02-23 00:18:04
目前一般公司的后台用的开发语言大概有以下几种:java,python,php,asp.net,c++,rubyon rails 等等。 java 优点:性能好,适合大中项目,跨平台,安全性高,稳定可靠,运行效率高(尤其是JIT的出现之后差距更大了),不容易犯错(强类型、预编译、必须拦截异常等等),能有效地提高复用度,提升性能和吞吐能力,能规避安全问题。 缺点:开发复杂,开发和发布的效率相对较低,维护成本高,开发人员费用高 python 优点:简单易学,开发快,语言简洁,易于维护,开源,可移植,可扩展 缺点: 速度慢,格式强制,容易犯错 php: 优点:灵活,上手快,易修改,发布快捷,环境好部署 缺点:容易犯错,行效率不高,缺乏全局缓存 ruby on rails 优点:快速开发,使用者多,开发控件非常丰富 缺点:性能差,第三方包少 asp.net 优点:跨语言, 中小型项目上性能好,开发快,适合windows平台,维护成本低 缺点:代码逻辑混乱,难于管理,代码的可重用性差 国内的大公司偏业务的一般都用 Java 做后台开发比如淘宝,网易,美团等. Python国内一般是一些体量不是这么大的公司使用,例如豆瓣,知乎等。其实,各种语言都有优缺点,没有哪一种是绝对好的。各公司也不是单单只使用一种后台语言,都是结合起来开发的。上述的各种语言的优缺点也是相对的

程序猿接私活经验总结,来自csdn论坛语录

五迷三道 提交于 2020-02-22 12:45:35
下面为网上摘录,以做笔记: 但是到网上看看,似乎接私活也有非常多不easy,技术问题本身是个因素,还有非常多有技术的人接私活时被骗,或者是合作到最后以失败告终,所以想请有经验的大侠们出来指点一下,接私活是怎么接的?一般流程如何?要注意什么?签合同的风险?等等问题,希望高手能将宝贵的经验与大家共享阿? ///////////////////////////////////// 最好是朋友或熟人推荐,这样两方都比較放心,项目也好拿一些,一般也不会欠款。 假设是陌生人就不好说了,即使签合同也没用。 还有就是接项目时,一定要了解对方是否有技术背景。 假设有技术背景,一般的项目费用会比較合适,不会太高也不会太低,关键是需求定义会比較清楚,后期维护改动量不大。 假设对方没有技术背景,就不好办了,即使能蒙对方要个比較高的价格,后期也会被无休止的需求变更累死的。 还有谈项目时一定要看对方的人品,夸夸其谈的人要敬而远之。 /////////////////////////////////////////// 程序猿接活需知新手接活,需知: 1,接活前,先跟美工把酬劳讲好,假设程序猿和美编酬劳一样的话,那就不要接.由于后期的活程序占绝大多数.而美编的任务比起程序,差的多. 2,接活前,一定要先让,客户把需求写成书面形式,然后依据文本里要求的功能,估价,假设是整个站的话,那最好多要点

前后台数据互访

♀尐吖头ヾ 提交于 2020-02-13 11:15:10
AJAX:异步传输技术 JSON:一种特殊格式书写的字符串 AJAX :全称Asynchronous JavaScript And XML,即“异步JavaScript及XML”传输技术。这是一种与服务器交换数据的艺术,它在不重载全部页面的情况下,实现了对部分网页的更新。 AJAX是一种web应用程序技术,该技术是在JavaScript和DOM服务器的配合下,实现了浏览器向服务器发出异步请求。 $.ajax({ url:"url", //url:请求地址 type:"post", //type:请求类型,"post"或"get" data:{key:value}, //data:连同请求一起发送的数据,一般为“JSON”格式 dataType:"json", //dataType:返回的数据类型,如:json、 text、html success:function(data){ //success:回调函数,data为响应的数据,function //处理data的代码 中对data进行处理 } }); JSON (JavaScript Object Notation)是存储和交换文本信息的语法,采用完全独立于语言的文本格式,是理想的轻量级文本数据交换格式。 JSON是JS的原生格式,所以在JS中处理JSON数据不需要特殊的API或工具包 来源: CSDN 作者: Miss_Y0

微信团队分享:iOS版微信是如何防止特殊字符导致的炸群、APP崩溃的?

大兔子大兔子 提交于 2020-02-13 08:38:25
本文来自微信开发团队yanyang的技术分享。 1、引言 相信大家都遇到过一段特殊文本可以让iOS设备所有app闪退的经历。前段时间大年初一,又出现某个印度语字符引起iOS11系统奔溃,所幸iOS版微信客户端做了保护并没有引起太大问题(字符处理这类技术问题,其实曾在Android版微信上导致过严重的用户体验危机,感兴趣的可以看看文章《 微信团队披露:微信界面卡死超级bug“15。。。。”的来龙去脉 》)。 一般来说,特殊字符闪退是系统漏洞引起,只要更新系统就行。但大部分用户不愿意更新系统,而苹果也不一定第一时间解决问题。另外后台可以拦截恶意文本传递,但对于本地已下发的消息,后台没有办法让它删除。所以客户端还是要做些保护预防特殊字符闪退。 学习交流: - 即时通讯开发交流群: 320837163 [推荐] - 移动端IM开发入门文章:《 新手入门一篇就够:从零开发移动端IM 》 (本文同步发布于: http://www.52im.net/thread-1449-1-1.html ) 2、微信的思路 由于无法事先知道字符串里包含特殊字符,所以只能先让它排版/绘制,看看是否出现问题。做法是,在排版/绘制字符串前,先设置标记位,排版/绘制结束后,移除标记位。 一旦发现标记位存在,就意味着这字符串可能有问题,下次就不显示这个字符串: 这里有几个问题: 有可能在排版/绘制过程中

微信团队分享:iOS版微信的高性能通用key-value组件技术实践

吃可爱长大的小学妹 提交于 2020-02-13 07:14:28
本文来自微信开发团队guoling的技术分享。 1、前言 本文要分享的是iOS版微信内部正在推广和使用的一个高性能通用key-value 组件的技术实践过程,该组件在微信内部被命名为MMKV(以下简称MMKV)。 MMKV 是基于 mmap 内存映射的 key-value 组件,底层序列化/反序列化使用 protobuf 实现,性能高,稳定性强。希望对于有高性能key-value 组件或类似技术需求的IM同行,能通过本文获得一定的启发。 学习交流: - 即时通讯开发交流群: 320837163 [推荐] - 移动端IM开发入门文章:《 新手入门一篇就够:从零开发移动端IM 》 (本文同步发布于: http://www.52im.net/thread-1461-1-1.html ) 2、MMKV 源起 在 iOS 微信的日常运营中,时不时就会爆发特殊文字引起 iOS 系统的 crash,《 微信团队分享:iOS版微信是如何防止特殊字符导致的炸群、APP崩溃的? 》一文里面设计的技术方案是在关键代码前后进行计数器的加减,通过检查计数器的异常,来发现引起闪退的异常文字。 《 微信团队分享:iOS版微信是如何防止特殊字符导致的炸群、APP崩溃的? 》里设计的技术方案大致原理就是: 1)在会话列表、会话界面等有大量 cell 的地方,希望新加的计时器不会影响滑动性能; 2

11个网站后台模版 | Admin Dashboards | Bootstrap

心已入冬 提交于 2020-02-09 17:00:57
11个网站后台模版 | Admin Dashboards | Bootstrap 1、AdminLTE 3 | 后台管理 | administration | Bootstrap 3 AdminLTE提供了一系列响应式,可重用且常用的组件。它具有一千多个图标,定制插件,六种不同外观以及更多功能。 当然,您可以期望AdminLTE能够100%响应,灵活且与浏览器兼容。 AdminLTE确保您的管理面板始终稳定运行,无论用户来自何处。 在AdminLTE套件中,您将发现使新颖的应用程序运行所需的必要条件。 请记住,AdminLTE基于Bootstrap框架,并结合了所有最新的Web实践。 下载 2、Nice | 后台管理 |模版 | administration | Bootstrap 3 您几乎可以猜到尼斯免费管理模板的作用。 当然,它是一个不错的,干净的,复杂的,易于使用的工具,可以与不同的应用程序和在线项目很好地配合使用。 Nice是一种Bootstrap框架工具,它遵循所有最新的Web和技术趋势。 您的仪表板将支持移动设备,响应式,友好的视网膜屏幕,跨浏览器兼容,并以闪电般的速度运行。 下载 3、Elegant | 后台管理 |模版 | administration | Bootstrap 3 Elegant | 后台管理 |模版 | administration |