1.Docker

 

Java代码
  1. Docker 是 一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容 器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的 是,他们不依赖于任何语言、框架包括系统。  

 

2.SOA

   

Java代码
  1. 面向服务架构,它可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。  
  2. SOA是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型。SOA可以看作是B/S模型、XML(标准通用标记语言的子集)/Web Service技术之后的自然延伸。  

 

3.CAP

CAP原则又称CAP定理,指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可得兼
  1. Consistency(一致性), 数据一致更新,所有数据变动都是同步的  (分布式 集群 每个节点数据更新都成功)  强一致性  /  最终一致性(弱一致性,最终保证一致性)
  2. Availability(可用性), 好的响应性能  (分布式集群 能提供可用服务,能容忍有节点坏死或无法响应,只要能保证正常响应即可)
  3. Partition tolerance(分区容错性) 可靠性,系统应该能持续提供服务,即使系统内部有消息丢失(分区)     ( 可能出现 网络不可达+网络中断)

CAP前提:就是每个条件 存在一定影响前提下

      因为p不可能避免,需要实现CP或者CA

参考:http://blog.csdn.net/chen77716/article/details/30635543

 

4.关系数据库的ACID模型

Java代码
  1. Atomicity原子性:一个事务中所有操作都必须全部完成,要么全部不完成。  
  2. Consistency一致性. 在事务开始或结束时,数据库应该在一致状态。  
  3. Isolation隔离层. 事务将假定只有它自己在操作数据库,彼此不知晓。  
  4. Durability. 一旦事务完成,就不能返回。  

 

5.flume  spark  hadoop hbase  cache  dubbo-service对于网站接口关系?

     参考:大数据架构  

 名词解释

Java代码
  1. 1).数据采集  
  2. 负责从各节点上实时采集数据,选用cloudera的flume来实现  
  3. 2).数据接入  
  4. 由于采集数据的速度和数据处理的速度不一定同步,因此添加一个消息中间件来作为缓冲,选用apache的kafka  
  5. 3).流式计算  
  6. 对采集到的数据进行实时分析,选用apache的storm  
  7. 4).数据输出  
  8. 对分析后的结果持久化,暂定用mysql  
  9. 另一方面是模块化之后,假如当Storm挂掉了之后,数据采集和数据接入还是继续在跑着,数据不会丢失,storm起来之后可以继续进行流式计算;  
 

名词解释 

 

5.什么是高并发网站?    

数据量+访问量

 

6. 什么是虚ip(vip):

何为虚IP那,就是一个未分配给真实主机的IP,也就是说对外提供数据库服务器的主机除了有一个真实IP外还有一个虚IP,使用这两个IP中的 任意一个都可以连接到这台主机,所有项目中数据库链接一项配置的都是这个虚IP,当服务器发生故障无法对外提供服务时,动态将这个虚IP切换到备用主机。

arp缓存的内容:

 

Java代码
  1. (192.168.1.219) at 00:21:5A:DB:68:E8 [ether] on bond0  
  2. (192.168.1.217) at 00:21:5A:DB:68:E8 [ether] on bond0  
  3. (192.168.1.218) at 00:21:5A:DB:7F:C2 [ether] on bond0  
  4.    
  5. 192.168.1.217192.168.1.218是两台真实的电脑,  
  6. 192.168.1.217为对外提供数据库服务的主机。  
  7. 192.168.1.218为热备的机器。  
  8. 192.168.1.219为虚IP。  
  9. 大家注意红字部分,219217的MAC地址是相同的。  
  10. 再看看那217宕机后的arp缓存  
  11. (192.168.1.219) at 00:21:5A:DB:7F:C2 [ether] on bond0  
  12. (192.168.1.217) at 00:21:5A:DB:68:E8 [ether] on bond0  
  13. (192.168.1.218) at 00:21:5A:DB:7F:C2 [ether] on bond0   
  14. 这就是奥妙所在。当218 发现217宕机后会向网络发送一个ARP数据包,告诉所有主机192.168.1.219这个IP对应的MAC地址是00:21:5A:DB:7F:C2,这样所有发送到219的数据包都会发送到mac地址为00:21:5A:DB:7F:C2的机器,也就是218的机器。  
 

 

  7.ifconfig配置

是linux中用于显示或配置网络设备(网络接口卡)的命令,英文全称是network interfaces configuring。

 

Java代码
  1. [root@localhost ~]# ifconfig  
  2. eth0      Link encap:Ethernet  HWaddr 00:50:56:BF:26:20    
  3.           inet addr:192.168.120.204  Bcast:192.168.120.255  Mask:255.255.255.0  
  4.           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1  
  5.           RX packets:8700857 errors:0 dropped:0 overruns:0 frame:0  
  6.           TX packets:31533 errors:0 dropped:0 overruns:0 carrier:0  
  7.           collisions:0 txqueuelen:1000   
  8.           RX bytes:596390239 (568.7 MiB)  TX bytes:2886956 (2.7 MiB)  
  9.    
  10. lo        Link encap:Local Loopback    
  11.           inet addr:127.0.0.1  Mask:255.0.0.0  
  12.           UP LOOPBACK RUNNING  MTU:16436  Metric:1  
  13.           RX packets:68 errors:0 dropped:0 overruns:0 frame:0  
  14.           TX packets:68 errors:0 dropped:0 overruns:0 carrier:0  
  15.           collisions:0 txqueuelen:0   
  16.           RX bytes:2856 (2.7 KiB)  TX bytes:2856 (2.7 KiB)  

说明:

eth0 表示第一块网卡, 其中 HWaddr 表示网卡的物理地址,可以看到目前这个网卡的物理地址(MAC地址)是 00:50:56:BF:26:20

inet addr 用来表示网卡的IP地址,此网卡的 IP地址是 192.168.120.204,广播地址, Bcast:192.168.120.255,掩码地址Mask:255.255.255.0 

lo 是表示主机的回坏地址,这个一般是用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口。比如把 HTTPD服务器的指定到回坏地址,在浏览器输入 127.0.0.1 就能看到你所架WEB网站了。但只是您能看得到,局域网的其它主机或用户无从知道。

第一行:连接类型:Ethernet(以太网)HWaddr(硬件mac地址)

第二行:网卡的IP地址、子网、掩码

第三行:UP(代表网卡开启状态)RUNNING(代表网卡的网线被接上)MULTICAST(支持组播)MTU:1500(最大传输单元):1500字节

第四、五行:接收、发送数据包情况统计

第七行:接收、发送数据字节数统计信息。

 

 

  8. lvs  

 

Java代码
  1.  LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。  
  2. 使用集群技术和Linux操作系统实现一个高性能、高可用的服务器.  
  3. 很好的可伸缩性(Scalability)  
  4. 很好的可靠性(Reliability)  
  5. 很好的可管理性(Manageability)。  
 

 

  9.keepalive    

 

  10.软负载/硬负载  负载均衡

Java代码
  1. 负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。  
  2.  软件负载均衡解决方案是指在一台或多台服务器相应的操作系统上安装一个或多个附加软件来实现负载均衡,如DNS Load Balance,CheckPoint Firewall-1 ConnectControl等,它的优点是基于特定环境,配置简单,使用灵活,成本低廉,可以满足一般的负载均衡需求。  
  3.  软 件解决方案缺点也较多,因为每台服务器上安装额外的软件运行会消耗系统不定量的资源,越是功能强大的模块,消耗得越多,所以当连接请求特别大的时候,软件 本身会成为服务器工作成败的一个关键;软件可扩展性并不是很好,受到操作系统的限制;由于操作系统本身的Bug,往往会引起安全问题。  
  4.  硬件负载均衡解决方案是直接在服务器和外部网络间安装负载均衡设备,这种设备通常称之为负载均衡器,由于专门的设备完成专门的任务,独立于操作系统,整体性能得到大量提高,加上多样化的负载均衡策略,智能化的流量管理,可达到最佳的负载均衡需求。  

 

 

相关文章: