- 正则表达式:匹配字符串---文件内容(介绍)
圆缘1987
REGEXP:由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意义,而表示控制或通配的功能•程序支持:grep,sed,awk,vim,less,nginx,varnish等•分两类:基本正则表达式:BRE扩展正则表达式:EREgrep-E,egrep•正则表达式引擎:采用不同算法,检查处理正则表达式的软件模块PCRE(PerlCompatibleRegularExpre
- varnish安装步骤
TerryWater
linuxMAGENTO
1.安装环境,其他软件,varnish需要这些软件的支持。yuminstall-yautomakeautoconflibtoolncurses-devellibxsltgroffpcre-develpkgconfiglibedit*2.wgethttp://jaist.dl.sourceforge.net/project/pcre/pcre/8.34/pcre-8.34.zip手动下载地址:htt
- Cloudera公司的CDH与HDP均无法下载问题(403 Forbidden (varnish) the provided credentials were incorrect)
小宇0926
大数据平台搭建cloudera
Cloudera公司的CDH与HDP均无法下载问题1.问题描述2.解决方法1.问题描述最近想下载CDH的相关安装包,发现需要输入用户名和密码然而输入cloudera账号之后,会出现如下提示也就是说cloudera不允许下载免费的安装包了,查了一下,如果然如此。2.解决方法使用开源的Apache的相关软件包http://archive.apache.org/dist/CDH&Ambari安装包百度云
- web缓存代理
沈阳最速传说と疾走の猛虎!贵物刀一郎です
javaspring开发语言
缓存代理的概述wed代理的工作机制缓存网页对象,减少重复请求web缓存代理作用1.存储一些之前被访问的,且可能将要被再次访问的静态网络资源对象,使用户可以直接从缓存代理服务器获取资源,从而减少上游原始服务器的负载压力,加快整个访问速度。2.代理服务器还可以代替客户端去获取原始服务器资源,从而隐藏客户端真实地址常见的web缓存代理应用:本地实现:nginx、squid、varnish云环境远端实现:
- varnish的简单使用
做咩啊~
综合架构缓存
varnish的简单使用安装配置配置启动参数文件配置环境信息文件配置varnish反向代理配置varnish启动varnish更加直观的查看varnish缓存手动清除缓存清除指定的缓存varnish配置多后端配置多后端在本地配置域名解析查看测试结果负载均衡配置导入模块定义负载均衡调度器调用负载均衡varnish推送平台配置通过图形化的方式简化缓存清理步骤部署安装varnish已被收录进EPEL源,
- 四层负载均衡--LVS + HA
young_dump_broke
LVS+HA负载均衡器lvsHA调度器linux
负载均衡分类:硬件负载均衡:F5BIG-IP不适用于小企业,使用不多软件负载均衡:lvs、haproxy、nigix、httpd、varnish基于应用层划分:4层-传输层,我们使用lvs、haproxy(tcp)只针对于ip地质7层-应用层:haproxynginx针对与应用lvs概述LVS(LinuxVirtualServer)即Linux虚拟服务器,是由章文嵩博士主导的开源负载均衡项目,目前
- Web高并发解决方案
我就是400
负载均衡架构Linux高并发memcached高并发memcachedlinux架构负载均衡
《手把手让你实现开源企业级web高并发解决方案》(lvs+heartbeat+varnish+nginx+eAccelerator+memcached)原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。http://freeze.blog.51cto.com/1846439/677348本来想起个比较风趣点的标题,可想来思去,还是走常规路线,做一系
- 五大开源 Web 代理服务器横评:Squid、Privoxy、Varnish、Polipo、Tinyproxy
hebeind100
奇文分享SquidPrivoxyVarnishPolipoTinyproxy
Web代理软件转发HTTP请求时并不会改变数据流量。它们可以配置成透明代理,而无需客户端配置。它们还可以作为反向代理放在网站的前端;这样缓存服务器可以为一台或多台web服务器提供无限量的用户服务。网站代理功能多样,有着宽泛的用途:从缓存页面、DNS和其他查询,到加速web服务器响应、降低带宽消耗。代理软件广泛用于大型高访问量的网站,比如纽约时报、卫报,以及社交媒体网站如Twitter、Facebo
- HA Cluster和keepalived主从,主主高可用设置以及varnish缓存机制(二)
家有猪宝_
四、简述http协议缓存原理及常用首部讲解cache:缓存程序的运行具有局部性特征:·时间局部性:一个数据被访问过之后,可能很快会被再次访问到;·空间局部性:一个数据被访问时,其周边也有可能被访问到;cache:命中热区:经常被访问到的数据区域;缓存命中率:判断缓存的利用率的衡量指标,hit/(hit+miss):取值范围·页面命中率:基于页面数量进行衡量·字节命中率:基于页面的体积进行衡量缓存的
- Keepalived、varnish
请叫我飘哥
1、Nginx+Keepalived实现站点高可用网络拓扑网络拓扑环境说明Nginx代理服务器:10.192.1.163、10.192.1.164Keepalived高可用程序提供对外服务IP地址VIP:10.192.1.99Web服务:10.192.1.66、10.192.1.67、10.192.1.68提供站点服务搭建10.192.1.163/64安装、配置Nginx和Keepalived安装
- 架构师日记——Varnish的Grace模式和Saint模式
饥渴计科极客杰铿
架构师架构师后端服务缓存
GRACE模式当几个客户端请求同一个页面的时候,varnish只发送一个请求的后端服务器,然后让那个其他几个请求挂起等待返回结果,返回结果后,复制请求结果发送给客户端。如果你的服务器每秒有数千万的点击率,那么这个队列是庞大的,没有用户喜欢等待服务器响应,为了解决这个问题,可以指示varnish去保持缓存的对象超过他们的TTL(就是该过期的,先别删除),而且去提供旧内容给正在等待的请求。为了提供旧的
- web cache
无玄
linux运维中,webcacheserver方案的部署是一个很重要的环节,选择也有很多种比如:varnish、squid、nginx。常用webcacheserver(varnish、squid、nginx)对比:varnish和squid是专业的cache服务,而nginx的cache功能是由第三方模块完成。要做cache服务的话,肯定是要选择专业的cache服务,优先选择squid和varn
- 架构组件比较
fxly0401
Software&Architecture架构
作为一个架构师,就必须要考虑如何选型,我们从性能、功能、配置上来进行比较筛选。软件名称性能功能过滤规则配置Squid不能多核是硬伤;磁盘缓存容量有优势;性能中等多;支持ACL角色控制;支持ICP缓存协议支持外部文件读取及热加载;支持热启动Varnish多核支持;内存缓存;性能强够用;支持集群,但不支持ICP集群;支持后端存活检查不支持外部文件读取;需要转义;支持热启动Nginx多核支持;支持代理插
- Varnish 学习笔记总结
weixin_34232363
后端开发工具操作系统
2019独角兽企业重金招聘Python工程师标准>>>声明:文中内容来自以下四个部分的学习笔记总结:1.马哥教育马永亮老师讲授的varnish课程2.高俊峰先生写的书籍《高性能Linux服务器构建实战》中的varnish章节3.陈明乾先生的51cto博客:http://freeloda.blog.51cto.com/2033581/12974144.互联网文档。特此向以上先贤致敬!!内容概括:一v
- 2018-10-17 缓存服务varnish
阿丧小威
参考:https://www.cnblogs.com/cutemsyu/p/6051876.html1、varnish程序环境软件包:yuminstallvarnish/etc/varnish/varnish.params:配置varnish服务进程的工作特性,例如监听的地址和端口,缓存机制;/etc/varnish/default.vcl:配置各Child/Cache线程的缓存;主程序:/usr
- varnish入门
怎么就重名了
杂记负载均衡
b站视频官网docker安装varnish某位博客园的varnish系列varnish04-varnish如何使用VCL3varnish的原理varnish是什么varnish的安装VCL基础VarnishConfigurationLanguage(VCL)是一种特定于领域的语言,可以用于描述VarnishCache服务如何处理请求和缓存策略。当加载新配置时,由Manager进程创建的VCC进程将
- nginx、varnish和tomcat的负载均衡(端口号配置)
董大志
本篇文档主要是为了搭配tomcat、varnish及nginx三者之间的端口号的配置,以实现三者之间的负载均衡!!运行环境:ubuntu16.04/centos7.4tomcat7jdk1.8nginx-1.5.11varnish-3.0.4注:tomcat、varnish及nginx的编译安装及初步配置可参考一下文献!https://www.jianshu.com/p/00e1ab183b6bh
- python开发要学什么_运维为什么要学编程?编程为什么是Python?
weixin_39949954
python开发要学什么
作者介绍:comyn,李学明。python大神,原大众点评运维平台架构师,腾讯广告部核心运维专家,饿了么Python运维开发高级总监,现就职于海淘公司。多年一线运维经验,参与过架构改造、平台迁移、自动化建设等运维核心项目,对开源系统都有深入理解,如LVS、Haproxy、MogileFS、Varnish、Nginx等,曾修改iptables内核实现实时流量镜像复制,奠定了大型公司流量无损压力测试模
- 为什么叫python编程-运维为什么要学编程?编程为什么是Python?
weixin_37988176
作者介绍:comyn,李学明。python大神,原大众点评运维平台架构师,腾讯广告部核心运维专家,饿了么Python运维开发高级总监,现就职于海淘公司。多年一线运维经验,参与过架构改造、平台迁移、自动化建设等运维核心项目,对开源系统都有深入理解,如LVS、Haproxy、MogileFS、Varnish、Nginx等,曾修改iptables内核实现实时流量镜像复制,奠定了大型公司流量无损压力测试模
- Varnish开源HTTP反向代理缓存服务器、部署安装、测试
我还能再学点
服务器缓存运维
一、概述Varnish是一个高性能的开源HTTP反向代理缓存服务器,它可以加速动态内容的交付并降低服务器的负载。Varnish常被用作HTTP加速器和负载均衡器,通过缓存静态文件、动态内容甚至整个页面来减少请求的数量和服务器响应时间。它支持各种缓存规则,可以针对不同的用户或请求类型缓存不同的信息,并提供丰富的管理工具和API以便于配置和监控。Varnish在Web性能优化和高可用性方面发挥着重要作
- Varnish开源HTTP反向代理缓存服务器
人间打气筒(Ada)
http缓存varnish运维缓存
第三阶段基础时间:2023年6月13日参加人:全班人员内容:Varnish目录Varnish端口号:TCP/6081TCP/6082配置文件:/etc/varnish/default.vcl安装部署:测试功能:VarnishVarnish是一个高性能的开源HTTP反向代理缓存服务器,它可以加速动态内容的交付并降低服务器的负载。Varnish常被用作HTTP加速器和负载均衡器,通过缓存静态文件、动态
- Varnish系列之三:动静分离架构与实现
平平淡淡的猪
Varnish状态引擎说明:subvcl_recv{if(req.method=="PRI"){/*WedonotsupportSPDYorHTTP/2.0*/return(synth(405));}if(req.method!="GET"&&req.method!="HEAD"&&req.method!="PUT"&&req.method!="POST"&&req.method!="TRACE"
- 实现高可用WordPress部署
weixin_34112208
php后端数据库
1概述本文通过HAProxy,Keepalive,实现动静分离wordpress,在每台haproxy和wordpress服务器之间加入缓存,通过缓存实现加速。具体需求如下.(1)动静分离部署wordpress,动静都要能实现负载均衡.(2)在haproxy和后端主机之间添加varnish进行缓存.(3)haproxy的设定要求:动静分离.(4)haproxy高可用.(5)通过VIP:172.18
- vanish
圈圈_4eef
varnish包安装yuminstallvarnishvarnish网址:www.varnish-cache.org命中率:warmup缓存热身,,缓存的有效性判断机制:过期时长:Expires绝对时长。。cache-control:maxage=最大时间相对时长,,,cache-control:s-maxage=控制公共缓存的可缓存时长。。varnish缓存文档。条件试请求:last-modif
- HA Cluster和keepalived主从,主主高可用设置以及varnish缓存机制
佐岸的咖啡
1)、简述HAcluster原理i).HAcluster的定义集群cluster是指使用一组计算机作为一个整体向用户提供一组网络资源。在集群中的每个计算机系统称为集群节点(node)。集群可随着业务的增长,通过添加新的节点的方式来提升集群性能。集群的类型包括:LoadBalance、HighAvailability、HighPerformance这三种,而我们通常所说的HAcluster就是Hig
- HA Cluster和keepalived主从,主主高可用设置以及varnish缓存机制(一)
家有猪宝_
一、简述HAcluster原理高可用集群,英文原文为HighAvailabilityCluster,简称HACluster;集群(cluster)就是一组计算机,它们作为一个整体向用户提供一组网络资源。这些单个的计算机系统就是集群的节点(node)。高可用性集群(HAcluster)是指如单系统一样地运行并支持(计算机)持续正常运行的一个主机群。高可用集群的出现是为了使集群的整体服务尽可能可用,从
- 高性能高可用方案Nginx (一)LNMP环境搭建
weixin_33834075
运维php开发工具
1、理论部分1.1、负载均衡的实现负载进程架构的实现方式有多种,一般分为:1)TCP层实现的负载均衡2)应用层实现的负载均衡1.1.1、TCP层实现的负载均衡例如:lvs(调度性能强悍)1.1.2、应用层实现的负载均衡例如:nginx,haproxy,apache(mod_proxy),varnish,squid1.2、nginx的功能:1.2.1、基本的HTTP服务器特性1)提供静态和指数文件,
- 兔子进洞算法_下兔子洞:一个varnishreload错误的故事-第1部分
cullen2012
pythonlinuxjavashellubuntu
兔子进洞算法Afterhittingthekeyboardbuttonsforthepast20minutes,asifhewastypingforhislife,ghostinushankaturnstomewithahalf-madlookinhiseyesandaslysmile,“Dude,IthinkIgotit.在过去的20分钟里,他一直按着键盘按键,仿佛他正在为自己的生活而打字一样,
- redis(2)-redis数据缓存、mysql和redis数据同步、varnish缓存及负载均衡及健康检查
Linux菜鸟玩家
自动化运维redis缓存数据库
1、Redis持久化—Redis和AOFRDB的优点RDB是一个非常紧凑的文件,它保存了某个时间点得数据集,非常适用于数据集的备份,比如你可以在每个小时报保存一下过去24小时内的数据,同时每天保存过去30天的数据,这样即使出了问题你也可以根据需求恢复到不同版本的数据集.RDB是一个紧凑的单一文件,很方便传送到另一个远端数据中心或者亚马逊的S3(可能加密),非常适用于灾难恢复.RDB在保存RDB文件
- 上能写代码,下要“揍”黑客,还有什么不是程序员的“锅”?
CSDN 程序人生
资讯程序人生网络安全业界资讯
软件工程大师杰拉尔德·温伯格(GeraldWeinberg)说过:“如果建筑商按照程序员编写程序的方式建造建筑,那么第一只出现的啄木鸟(找Bug)就会摧毁整个文明。近日,美国计算机协会的六月刊(COMMUNICATIONSOFTHEACM)收录了一篇名为《软件行业仍然是问题所在》的文章。此文作者Poul-HenningKamp是一位丹麦的计算机软件开发人员,也是FreeBSD、Varnish等开源
- java杨辉三角
3213213333332132
java基础
package com.algorithm;
/**
* @Description 杨辉三角
* @author FuJianyong
* 2015-1-22上午10:10:59
*/
public class YangHui {
public static void main(String[] args) {
//初始化二维数组长度
int[][] y
- 《大话重构》之大布局的辛酸历史
白糖_
重构
《大话重构》中提到“大布局你伤不起”,如果企图重构一个陈旧的大型系统是有非常大的风险,重构不是想象中那么简单。我目前所在公司正好对产品做了一次“大布局重构”,下面我就分享这个“大布局”项目经验给大家。
背景
公司专注于企业级管理产品软件,企业有大中小之分,在2000年初公司用JSP/Servlet开发了一套针对中
- 电驴链接在线视频播放源码
dubinwei
源码电驴播放器视频ed2k
本项目是个搜索电驴(ed2k)链接的应用,借助于磁力视频播放器(官网:
http://loveandroid.duapp.com/ 开放平台),可以实现在线播放视频,也可以用迅雷或者其他下载工具下载。
项目源码:
http://git.oschina.net/svo/Emule,动态更新。也可从附件中下载。
项目源码依赖于两个库项目,库项目一链接:
http://git.oschina.
- Javascript中函数的toString()方法
周凡杨
JavaScriptjstoStringfunctionobject
简述
The toString() method returns a string representing the source code of the function.
简译之,Javascript的toString()方法返回一个代表函数源代码的字符串。
句法
function.
- struts处理自定义异常
g21121
struts
很多时候我们会用到自定义异常来表示特定的错误情况,自定义异常比较简单,只要分清是运行时异常还是非运行时异常即可,运行时异常不需要捕获,继承自RuntimeException,是由容器自己抛出,例如空指针异常。
非运行时异常继承自Exception,在抛出后需要捕获,例如文件未找到异常。
此处我们用的是非运行时异常,首先定义一个异常LoginException:
/**
* 类描述:登录相
- Linux中find常见用法示例
510888780
linux
Linux中find常见用法示例
·find path -option [ -print ] [ -exec -ok command ] {} \;
find命令的参数;
- SpringMVC的各种参数绑定方式
Harry642
springMVC绑定表单
1. 基本数据类型(以int为例,其他类似):
Controller代码:
@RequestMapping("saysth.do")
public void test(int count) {
}
表单代码:
<form action="saysth.do" method="post&q
- Java 获取Oracle ROWID
aijuans
javaoracle
A ROWID is an identification tag unique for each row of an Oracle Database table. The ROWID can be thought of as a virtual column, containing the ID for each row.
The oracle.sql.ROWID class i
- java获取方法的参数名
antlove
javajdkparametermethodreflect
reflect.ClassInformationUtil.java
package reflect;
import javassist.ClassPool;
import javassist.CtClass;
import javassist.CtMethod;
import javassist.Modifier;
import javassist.bytecode.CodeAtt
- JAVA正则表达式匹配 查找 替换 提取操作
百合不是茶
java正则表达式替换提取查找
正则表达式的查找;主要是用到String类中的split();
String str;
str.split();方法中传入按照什么规则截取,返回一个String数组
常见的截取规则:
str.split("\\.")按照.来截取
str.
- Java中equals()与hashCode()方法详解
bijian1013
javasetequals()hashCode()
一.equals()方法详解
equals()方法在object类中定义如下:
public boolean equals(Object obj) {
return (this == obj);
}
很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们知道,String 、Math、I
- 精通Oracle10编程SQL(4)使用SQL语句
bijian1013
oracle数据库plsql
--工资级别表
create table SALGRADE
(
GRADE NUMBER(10),
LOSAL NUMBER(10,2),
HISAL NUMBER(10,2)
)
insert into SALGRADE values(1,0,100);
insert into SALGRADE values(2,100,200);
inser
- 【Nginx二】Nginx作为静态文件HTTP服务器
bit1129
HTTP服务器
Nginx作为静态文件HTTP服务器
在本地系统中创建/data/www目录,存放html文件(包括index.html)
创建/data/images目录,存放imags图片
在主配置文件中添加http指令
http {
server {
listen 80;
server_name
- kafka获得最新partition offset
blackproof
kafkapartitionoffset最新
kafka获得partition下标,需要用到kafka的simpleconsumer
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.
- centos 7安装docker两种方式
ronin47
第一种是采用yum 方式
yum install -y docker
 
- java-60-在O(1)时间删除链表结点
bylijinnan
java
public class DeleteNode_O1_Time {
/**
* Q 60 在O(1)时间删除链表结点
* 给定链表的头指针和一个结点指针(!!),在O(1)时间删除该结点
*
* Assume the list is:
* head->...->nodeToDelete->mNode->nNode->..
- nginx利用proxy_cache来缓存文件
cfyme
cache
user zhangy users;
worker_processes 10;
error_log /var/vlogs/nginx_error.log crit;
pid /var/vlogs/nginx.pid;
#Specifies the value for ma
- [JWFD开源工作流]JWFD嵌入式语法分析器负号的使用问题
comsci
嵌入式
假如我们需要用JWFD的语法分析模块定义一个带负号的方程式,直接在方程式之前添加负号是不正确的,而必须这样做:
string str01 = "a=3.14;b=2.71;c=0;c-((a*a)+(b*b))"
定义一个0整数c,然后用这个整数c去
- 如何集成支付宝官方文档
dai_lm
android
官方文档下载地址
https://b.alipay.com/order/productDetail.htm?productId=2012120700377310&tabId=4#ps-tabinfo-hash
集成的必要条件
1. 需要有自己的Server接收支付宝的消息
2. 需要先制作app,然后提交支付宝审核,通过后才能集成
调试的时候估计会真的扣款,请注意
- 应该在什么时候使用Hadoop
datamachine
hadoop
原帖地址:http://blog.chinaunix.net/uid-301743-id-3925358.html
存档,某些观点与我不谋而合,过度技术化不可取,且hadoop并非万能。
--------------------------------------------万能的分割线--------------------------------
有人问我,“你在大数据和Hado
- 在GridView中对于有外键的字段使用关联模型进行搜索和排序
dcj3sjt126com
yii
在GridView中使用关联模型进行搜索和排序
首先我们有两个模型它们直接有关联:
class Author extends CActiveRecord {
...
}
class Post extends CActiveRecord {
...
function relations() {
return array(
'
- 使用NSString 的格式化大全
dcj3sjt126com
Objective-C
格式定义The format specifiers supported by the NSString formatting methods and CFString formatting functions follow the IEEE printf specification; the specifiers are summarized in Table 1. Note that you c
- 使用activeX插件对象object滚动有重影
蕃薯耀
activeX插件滚动有重影
使用activeX插件对象object滚动有重影 <object style="width:0;" id="abc" classid="CLSID:D3E3970F-2927-9680-BBB4-5D0889909DF6" codebase="activex/OAX339.CAB#
- SpringMVC4零配置
hanqunfeng
springmvc4
基于Servlet3.0规范和SpringMVC4注解式配置方式,实现零xml配置,弄了个小demo,供交流讨论。
项目说明如下:
1.db.sql是项目中用到的表,数据库使用的是oracle11g
2.该项目使用mvn进行管理,私服为自搭建nexus,项目只用到一个第三方 jar,就是oracle的驱动;
3.默认项目为零配置启动,如果需要更改启动方式,请
- 《开源框架那点事儿16》:缓存相关代码的演变
j2eetop
开源框架
问题引入
上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。
该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。
当然去看相关实现代代码的时候,大致是下面的样子。
[java]
view plain
copy
print
?
public vo
- AngularJS浅析
kvhur
JavaScript
概念
AngularJS is a structural framework for dynamic web apps.
了解更多详情请见原文链接:http://www.gbtags.com/gb/share/5726.htm
Directive
扩展html,给html添加声明语句,以便实现自己的需求。对于页面中html元素以ng为前缀的属性名称,ng是angular的命名空间
- 架构师之jdk的bug排查(一)---------------split的点号陷阱
nannan408
split
1.前言.
jdk1.6的lang包的split方法是有bug的,它不能有效识别A.b.c这种类型,导致截取长度始终是0.而对于其他字符,则无此问题.不知道官方有没有修复这个bug.
2.代码
String[] paths = "object.object2.prop11".split("'");
System.ou
- 如何对10亿数据量级的mongoDB作高效的全表扫描
quentinXXZ
mongodb
本文链接:
http://quentinXXZ.iteye.com/blog/2149440
一、正常情况下,不应该有这种需求
首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的时候,如果是范围查询,你至少应该要加上limit。
说一下,
- C语言算法之水仙花数
qiufeihu
c算法
/**
* 水仙花数
*/
#include <stdio.h>
#define N 10
int main()
{
int x,y,z;
for(x=1;x<=N;x++)
for(y=0;y<=N;y++)
for(z=0;z<=N;z++)
if(x*100+y*10+z == x*x*x
- JSP指令
wyzuomumu
jsp
jsp指令的一般语法格式: <%@ 指令名 属性 =”值 ” %>
常用的三种指令: page,include,taglib
page指令语法形式: <%@ page 属性 1=”值 1” 属性 2=”值 2”%>
include指令语法形式: <%@include file=”relative url”%> (jsp可以通过 include