后端技术

收益 or 挑战?Serverless 究竟给前端带来了什么

十年热恋 提交于 2019-12-02 02:34:08
作者 | 黄子毅(紫益) 阿里前端技术专家 导读: 前端开发者是最早享受到 “Serverless” 好处的群体,因为浏览器就是一个开箱即用、甚至无需为计算付费的环境!Serverless 把前端开发体验带入了后端,利用 FaaS 与 BaaS 打造一套开箱即用的后端开发环境。本文作者将从前端角度出发,为你讲述 Serverless 带来的收益及挑战。 引言 Serverless 是一种 “无服务器架构”,让用户无需关心程序运行环境、资源及数量,只要将精力 Focus 到业务逻辑上的技术。 现在公司已经实现 DevOps 化,正在向 Serverless 迈进,而为什么前端要关注 Serverless? 对业务前端同学: 会改变前后端接口定义规范; 一定会改变前后端联调方式,让前端参与服务器逻辑开发,甚至 Node Java 混部; 大大降低 Nodejs 服务器维护门槛,只要会写 JS 代码就可以维护 Node 服务,无需学习 DevOps 相关知识。 对一个自由开发者: 未来服务器部署更弹性,更省钱; 部署速度更快,更不易出错。 前端框架总是带入后端思维,而 Serverless 则是把前端思维带入了后端运维。 ** 前端开发者其实是最早享受到 “Serverless” 好处的群体。他们不需要拥有自己的服务,甚至不需要自己的浏览器,就可以让自己的 JS 代码均匀

我的后端开发书架2016

旧巷老猫 提交于 2019-12-02 02:27:58
本书架主要针对Java后端开发与架构。 更新记录:4.0版把第五部份-具体技术的书整块拿掉了。《TCP/IP详解 卷1:协议》出到了第二版,增加《SRE:Google运维解密》,《Java8 实战》。 更偏爱那些能用简短流畅的话,把少壮不努力的程序员所需的基础补回来的薄书,而有些教课书可能很著名,但干涩枯燥,喋喋不休的把你带回到大学课堂上昏昏欲睡,不录。 1. 操作系统与网络的书 《Linux内核设计与实现 第3版》 Robert Love用最薄的篇幅,顺畅的文字将Linux内核主要的算法讲清楚了, 《深入理解Linux内核》 , 《深入Linux内核架构》 之类厚厚的全是代码,不是专门的内核程序员看这本足够了。 《Linux系统编程 第2版》 继续是Robert Love,比起APUE也是以薄见长,专门针对重要的系统调用讲解。 《性能之巅》 操作系统的性能调优、监控、工具和方法论,看这本就够了,已经足够厚,可能是书单里最厚的一本。 《TCP/IP详解 卷1:协议》 这么多年过去了,TCP的书好像主要还是只有这一本,有点旧了,看了也还是半懂不懂的。后人在2011年写了第二版。 《WireShark网络分析就这么简单》 和 《WireShark网络分析的艺术》 多少人,是看了这两本轻松又实战的书,才真正理解TCP的细节。 PS: 《UNIX环境高级编程》 和 《UNIX网络编程》

php后端开发要学什么

。_饼干妹妹 提交于 2019-12-01 22:54:10
PHP历史: 1994年创建,1995年对外发表第一个版本,名为:personal home page tools,之后发表PHP1.0。1995年中期,PHP2.0,从此建立了PHP在动态网站开发的地位。1997,PHP3。2000年PHP4.0。2004年7月,PHP5.0,改版以Zend II为引擎,实现面向对象。 PHP的职业前景: webb3.0的升温,互联网技术发展的热潮,技术创新等特点,决定了要依靠最快卡法速度和最低成本才能取胜。PHP技术人才迎合互联网的发展趋势。降低成本,提升开发速度,满足最新的互动式网络开发的需要。 PHP后端技术主要包括: web前端技术与PHP基础 Linux MySQL PHP框架 缓存技术和海量数据优化技术 系统调优和负载均衡技术 PHP后端工程师职业体系的5个阶段: 初级 相关基础:html,js,php,mysql;源码管理工具。可以胜任初级开发工作。 中级 Linux操作系统,PHP面向对象,PHP高级开发技术,PHP开发框架,PHP与公共API接口开发,PHP测试工具,此阶段可以独立完成开发工作。 高级 深入HTTP协议,PHP环境高级配置,MySQL优化技术,静态化和缓存技术,网站安全技术;目标:深入理解PHP开发环境,能胜任核心代码的编写工作。 资深 深入分析PHP框架源代码,深入学习PHP内核,NoSQL数据库

讨论Web前后端分离的意义

谁说胖子不能爱 提交于 2019-12-01 20:28:00
自然是有很大意义的。下面我可能说的比较多……方便题主能够更全面的了解为什么说是有有意义的。另外,本文是以Java的角度谈前后端分离。放心,大家一定会有种是我了,没错,的感觉。 一、先来明晰下概念   前后端分离是通过Ngnix+Tomcat的方式(也可以中间加一个Node.js)有效的进行解耦,并且前后端分离会为以后的大型分布式架构、弹性计算架构、微服务架构、多端化服务(多种客户端,例如:浏览器,车载终端,安卓,iOS等等)打下坚实的基础。这个步骤是系统架构从猿进化成人的必经之路。   它的核心思想是 前端HTML页面通过Ajax调用后端的Restful API接口并使用json数据进行交互。这点题主也有提到。 二、其次,让我们了解下,没有前后端分离的时代(各种耦合)   过去,Java Web项目大多数都是Java程序员又当爹又当妈,又搞前端,又搞后端。   感觉就是,怀疑猿生……   那时的JavaWeb项目都是使用了若干后台框架,Spring MVC/Struts + Spring + Spring JDBC/Hibernate/Mybatis 等等。   大多数项目在Java后端都是分了三层,控制层,业务层,持久层。控制层负责接收参数,调用相关业务层,封装数据,以及路由&渲染到JSP页面。然后JSP页面上使用各种标签或者手写Java表达式将后台的数据展现出来

后端开发工程师面试题汇总 | 网络知识

本秂侑毒 提交于 2019-12-01 18:13:01
无论做前端开发还是后端开发,网络知识是必备的知识。这部分知识是基础中的基础,是我们必须掌握的内容。网络相关的问题也是在面试过程中经常被问到的内容。本文主要梳理了一下网络相关的主要知识点及面试中经常被问到的内容,希望对大家有所帮助。 OSI有哪几层,会画出来,知道主要几层的各自作用 OSI(Open System Interconnect),即开放式系统互联,是ISO(国际标准化组织)组织在1985年研究的网络互连模型。其一共有7层: 1. 应用层(数据):确定进程之间通信的性质以满足用户需要以及提供网络与用户应用 2. 表示层(数据):主要解决拥护信息的语法表示问题,如加密解密 3. 会话层(数据):提供包括访问验证和会话管理在内的建立和维护应用之间通信的机制,如服务器验证用户登录便是由会话层完成的 4. 运输层(段):实现网络不同主机上用户进程之间的数据通信,可靠 与不可靠的传输,传输层的错误检测,流量控制等 5. 网络层(包):提供逻辑地址(IP)、选路,数据从源端到目的端的 传输 6. 数据链路层(帧):将上层数据封装成帧,用MAC地址访问媒介,错误检测与修正 7. 物理层(比特流):设备之间比特流的传输,物理接口,电气特性等* TCP/IP有哪几层,会画出来,知道所有层数的作用,会列举各层主要的协议名称 TCP/IP分层模型(TCP/IP Layening Model

Java后端工程师必备书单(从Java基础到分布式)

ⅰ亾dé卋堺 提交于 2019-12-01 10:25:58
Java开发工程师一般负责后端开发,当然也有专门做Java Web的工程师,但是随着前后端的分离,越来越多的Java工程师需要往大后端方向发展。 今天我们就来介绍一下Java后端开发者的书单。 首先要感谢一下江南白衣大大的后端书架,让我在初学阶段读到了很多好书,直到现在都印象深刻。 我在两年的学习历程中看了很多的书,其中不乏XXX入门到精通,XXX王者归来,XXX指南什么的。 虽然这类书确实毛病很多,但是作为非科班的我来说,当时还是看的津津有味。直到后来我看到一些优秀的书籍,以及白衣哥的书架,我才逐渐认识到看一些精品书籍的好处。 所以我们今天就从这些精品书籍中挑选一些优秀书籍来推荐给大家,当然其中有一些书我自己也没有时间看完。 接下来我们按照后端技术栈各个部分的内容来推荐书籍。 网络 1 TCP/IP卷一 这本其实我刚开始没看太懂,可能是当时太水的原因,但是一般是大牛力荐的书。 2 计算机网络:自顶向下 这本从应用层讲到物理层,感觉这种方式学起来更轻松,我比较推荐小白看这本。 3 图解HTTP和图解TCP/IP 相较于前两本大厚书,这两本书更加亲民,小白可以买来看看,还是很适合入门的。 4 计算机网络 没错,就是这本教材,作为非科班选手自己看这本书,那叫一个欲仙欲死啊,看完就忘记了。 操作系统 1 深入理解计算机系统 这本书不是严格意义上的操作系统书籍

Python后端技术栈(六)--数据库

天涯浪子 提交于 2019-12-01 10:19:46
每日分享 What makes you different or weird—that’s your strength. 那些让你与众不同或怪异的,就是你的力量所在。 1.6数据库 上篇文章对网络编程中的一些经典问题做了总结,比如各种网络协议、IO 多路复用模型、并发库等等。 本篇文章将开始数据库的相关内容,开始咯~ 1.6.1 MySQL 1.6.1.1 MySQL 基础知识点 1.事务的原理,特性,事务并发控制 2.常用的字段、含义和区别 3.常用数据库引擎之间区别 1.6.1.2事务 Transaction 1.事务是数据库并发控制的基本单位 2.事务可以看做是一系列 SQL 语句的集合 3.事务的特性就是要么全部执行成功,要么全部执行失败(回滚) 我们最常见的就是转账操作这样一个使用案例。比如 A 给 B 转账,第一步是从 A 的账户查询一下余额还够不够,然后扣款。第二步是 B 的账户里面增加对应的金额。 从代码的层面来说,下面举一个 SQLAlchemy 框架执行回滚操作的例子: session.begin() try: item1 = session.query(Item).get(1) item2 = session.query(Item).get(2) item1.foo = 'bar' item2.bar = 'foo' session.commit()

SQLMAP注入教程-11种常见SQLMAP使用方法详解

百般思念 提交于 2019-12-01 09:54:36
sqlmap也是渗透中常用的一个注入工具,其实在注入工具方面,一个sqlmap就足够用了,只要你用的熟,秒杀各种工具,只是一个便捷性问题,sql注入另一方面就是手工党了,这个就另当别论了。今天把我一直以来整理的sqlmap笔记发布上来供大家参考。 一共有11种常见SQLmap使用方法: 一、SQLMAP用于Access数据库注入 (1) 猜解是否能注入 1 2 win : python sqlmap.py - u " http://www.xxx.com/en/CompHonorBig.asp?id=7 " Linux : .lmap.py - u " http://www.xxx.com/en/CompHonorBig.asp?id=7 " (2) 猜解表 1 2 win : python sqlmap.py - u " http://www.xxx.com/en/CompHonorBig.asp?id=7 " --tables Linux : .lmap.py - u " http://www.xxx.com/en/CompHonorBig.asp?id=7 " --tables (3) 根据猜解的表进行猜解表的字段(假如通过2得到了admin这个表) 1 2 win : python sqlmap.py - u " http://www.xxx.com/en

Python后端技术栈(七)--web框架

六月ゝ 毕业季﹏ 提交于 2019-12-01 08:59:37
1.7 Python web 框架 上篇文章对数据库中的一些经典问题做了总结,比如关系型数据库中事务、隔离级别、慢查询分析、索引原理以及非关系型数据库的数据结构等等。 本篇文章将开始 Python web 框架的相关内容,开始咯~ 1.7.1 Python WSGI 与 web 框架 1.7.1.1 什么是 WSGI ? 我们经常使用 uwsgi/gunicorn 部署 Django/Flask 应用,但是大家思考过一个问题没有,为什么不同的框架可以部署在相同的 web 服务器上呢?比如为什么 Flask/Django 都可以运行在 gunicorn 之上呢? 肯定需要定义一个规范,如果遵守这个规范,就可以让任意的 web 框架运行在相同的 web server 上了。这个规范就是我们提到的 WSGI。也就是 Python Web Server Gateway Interface (PEP3333) WSGI 出现的意义,官方文档中是这样描述的: This document specifies a proposed standard interface between web servers and Python web applications or frameworks,to promote web application portability across a

对Serverless的研究

坚强是说给别人听的谎言 提交于 2019-12-01 07:58:07
1. 引言 Serverless 是一种 “无服务器架构”,让用户无需关心程序运行环境、资源及数量,只要将精力 Focus 到业务逻辑上的技术。 现在公司已经实现 DevOps 化,正在向 Serverless 迈进,而为什么前端要关注 Serverless? 对业务前端同学: 会改变前后端接口定义规范。 一定会改变前后端联调方式,让前端参与服务器逻辑开发,甚至 Node Java 混部。 大大降低 Nodejs 服务器维护门槛,只要会写 JS 代码就可以维护 Node 服务,而无需学习 DevOps 相关知识。 对一个自由开发者: 未来服务器部署更弹性,更省钱。 部署速度更快,更不易出错。 前端框架总是带入后端思维,而 Serverless 则是把前端思维带入了后端运维。 前端开发者其实是最早享受到 “Serverless” 好处的群体。他们不需要拥有自己的服务,甚至不需要自己的浏览器,就可以让自己的 JS 代码均匀、负载均衡的运行在每一个用户的电脑中。 而每个用户的浏览器,就像现在最时髦,最成熟的 Serverless 集群,从远程加载 JS 代码开始冷启动,甚至在冷启动上也是卓越领先的:利用 JIT 加速让代码实现毫秒级别的冷启动。不仅如此,浏览器还是实现了 BAAS 服务的完美环境,我们可以调用任何函数获取用户的 Cookie、环境信息、本地数据库服务