• 关于

    控制过程怎么看配置

    的搜索结果

回答

引用楼主爱创斯博于2014-04-16 21:06发表的 看看怎么回事呢! : 反复重置磁盘更换系统会降低服务器的性能IO?感觉比以前慢了很多.重启和停止都需要花很长时间.注:在没有装任何东西出现的情况.配置一样.但系统运行.不知道怎么回事.慢.慢.! 楼主重启和停止慢的时候,楼主可以使用控制台的ecs连接管理终端vnc功能到界面看下启动和停止过程是否有异常, 反复重置磁盘更换系统磁盘慢楼主可以测试下磁盘io读写性能,看下数据。

qilu 2019-12-02 03:05:35 0 浏览量 回答数 0

问题

【精品问答】dubbo必备面试题集

游客pklijor6gytpx 2019-12-01 21:54:02 54 浏览量 回答数 1

回答

VESTACP常用命令集:点击进入 ECS安装Plesk :点击进入 Plesk切换中文:点击进入 VESTACP安装ZendOpcache,Ioncubeloader等:点击进入AMH4.2 PHP升级工具:点击进入 AMH4.2 OSS 内网版:点击进入 AMH4.2 数据盘挂载分区教程:点击进入 AMH nginx升级脚本:点击进入 以数据安全之名:AMH配合OSS远程备份:点击进入 Centos6 下部署PPTP虚拟专有网:点击进入 Centos5下部署PPTP虚拟专有网:点击进入  Centos5下部署L2TP虚拟专有网:点击进入 Debian下部署PPTP虚拟专有网:点击进入 阿里云快速部署Socks V5代理:点击进入 VPSKK-AMH4.3内网安装版:点击进入 ------------------------- WindowsServer2012部署图文教程(上):点击进入 WindowsServer2012部署图文教程(下):点击进入 WindowsServer2012部署IIS-PHP教程:点击进入 WindowsServer2012英文版汉化教程:点击进入 WindowsServer2012配置IIS8.5:点击进入 WindowsServer2012配置PHP环境:点击进入 WindowsServer2012配置ZendOpcache加速:点击进入 WindowsServer2012关闭IE增强安全配置:点击进入 WindowsServer2012配置Oracle:点击进入 WindowsServer2012配置MySQL:点击进入 ------------------------- ACE Java教程: Java Maven 环境部署:点击进入 ACE Java教程: 官方Demo编译:点击进入ACE Java教程:手动创建一个演示应用:点击进入 ACE Java教程:使用Eclipse创建应用:点击进入 ACE Java教程:让应用在本地跑起来:点击进入 JAVA Maven切换国内镜像加速打包:点击进入ACE 部署高性能博客Solo:点击进入ACE Python: ACE-python 到底啥版本:点击进入 ACE Python:Python环境部署:点击进入 ACE Python:Requirements.txt就是这样写:点击进入ACE Python教程:从Hello World到Hello Web:点击进入ACE NodeJs教程:安装NodeJS本地环境&Hello World:点击进入 ACE NodeJs教程:NodeJS使用淘宝NPM镜像加速NODEJS模块下载:点击进入 ACE NodeJs教程:从Express开始:点击进入 ACE NodeJS教程:Expresss还能做些什么:点击进入ACE PHP教程:EMLOG部署全过程(含伪静态规则):点击进入 弹性Web托管教程导航:点击进入 弹性Web托管EWS购买教材:点击进入 弹性Web托管EWS面板介绍:点击进入 弹性Web托管安装WordPress:点击进入 弹性Web托管安装DirectoryLister:点击进入 弹性Web托管常见问题:点击进入 弹性Web托管安装Typecho:点击进入 ------------------------- 轻松加速Docker镜像下载:点击进入 Centos部署Docker环境:点击进入 DockerFAQ:Docker常见问题:点击进入 使用DockerCompose配置WordPress和数据盘:点击进入 ------------------------- 深信服SSLVPN怎么玩 一、简单配置VPN :点击进入 深信服SSLVPN怎么玩 二、资源组配置:点击进入 深信服SSLVPN怎么玩 三、小型企业配置实例:点击进入 深信服SSLVPN怎么玩 四、系统杂项配置:点击进入深信服下一代防火墙NGAF 怎么玩?一、购买实例,注册,配置:点击进入 深信服下一代防火墙NGAF怎么玩?二、防火墙、内容控制策略的设置:点击进入 ------------------------- 极端情况下的RDS导入方案:点击进入 OSSFS系列教程一、 OSSFS On Debain 7 :点击进入 OSSFS系列教程二、 OSSFS FAQ&&实用技巧大全:点击进入 OSSFS系列教程三、 OSSFS On Centos 7 :点击进入 OSSFS系列教程四、 OSSFS On Ubuntu 14.01:点击进入 OSSFS系列教程之OSSFS部署视频教程:点击进入 ------------------------- 7L ------------------------- 8L ------------------------- 回 10楼(糖叔) 的帖子 8搂以后都是你们的 ------------------------- 回 9楼(鬼才神兵) 的帖子 毕竟越搞扩散的越多,占少了怕不够,以后再搞麻烦 ------------------------- 回 13楼(鬼才神兵) 的帖子 如果特别多呢。。。 ------------------------- 回 18楼(骄) 的帖子 参考 http://jingyan.baidu.com/article/fd8044fad0afcd5031137aa5.html ------------------------- 试试使用自带的中文版? ------------------------- 回 24楼(bruces) 的帖子 下载Zend的so文件,链接进去就行 ------------------------- 回 28楼(小丁10) 的帖子 需要进行跳转,看您是否备案了?

西秦说云 2019-12-02 01:00:21 0 浏览量 回答数 0

阿里云试用中心,为您提供0门槛上云实践机会!

0元试用32+款产品,最高免费12个月!拨打95187-1,咨询专业上云建议!

回答

没人理我吗? ###### 看这个 http://code.google.com/p/modwsgi/wiki/QuickConfigurationGuide ######你能说下吗?###### 以下只是我的Wsgi部分的配置(httpd.conf): LoadModule wsgi_module modules/mod_wsgi.so WSGIScriptAlias /wsgi /django-app/SimpleCRM/SimpleCRM/wsgi.py WSGIPythonPath /django-app/SimpleCRM AddType text/html .py <Directory /django-app/SimpleCRM/SimpleCRM>      AllowOverride All      Options ExecCGI      Order deny,allow      Allow from All </Directory> 我用的是XAMPP。 ######回复 @dreamhack : 你在Command Prompt下非Python目录里可以跑Python的Code 吗?######嗯,谢谢,我的还是不行,除了这段配置不需要设置别的了?python解释器怎么办?我弄好几天了,实在解决不了!你安装django了,我只是搭建环境,没框架,能跑py web就行!###### 在System Property->Environment Variables的Sytem variables 或者User variables 中选择Path,选Edit,加上你的路径。 ###### 设置环境变量,XP看看这个:http://best-windows.vlaurie.com/environment-variables.html 和这个:http://www.computerhope.com/issues/ch000549.htm Win 7, 看这个:http://geekswithblogs.net/renso/archive/2009/10/21/how-to-set-the-windows-path-in-windows-7.aspx ######回复 @dreamhack : 是py的路径。######嗯,啥路径?python安装的路径?还是网站工作的路径呢?######安装两个版本没有问题,在路径中选一个就是了。######回复 @dreamhack : 关键是每一个人的机器的环境并不相同,你不可能完全按照别人写的做。你要能够理解每一步本身的含义才好。######很不好意思告诉您我还是没成功,简直见鬼了!你能写个博客仔细说下吗?我相信很多人都需要这个###### 下面这一步你做了吗? 对于Windows 2000、XP、2003,点击控制面板->系统->高级->环境变量。在“系统变量”表单中点击叫做PATH的变量,然后编辑这个变量,把;C:\Python26加到它的结尾。当然,是Python所在的正确目录名。 ######啊!哈哈哈哈,谢谢您了,我配置好了!去掉了WSGIScriptAlias WSGIPythonPath这俩个,这个玩意弄了我几天了,前俩天搞得我都想回去用php了!真心谢谢######嗯,真的谢谢了,我也是这样弄的!WSGIScriptAlias /wsgi /django-app/SimpleCRM/SimpleCRM/wsgi.py WSGIPythonPath /django-app/SimpleCRM 你能解释下怎么改吗?我没安装django!我再好好整理下!######你应该说说有什么错误信息。######你可不可以把py, Apache和你的测试代码都放在一个硬盘符上试试看。感觉还是路径设置的问题。不要分开放置在C:,D:或者是E:上。######嗯,弄好了,谢谢,等下我写个博客去,免得向我一样的新手这样纠结!######Itenllij IDEA  可以用用######你在说什麽? ========================= title = Tomcat安装后配置问题 describe =     Tomcat安装后配置的过程中,配置好虚拟路径后在浏览器中输入“http://localhost/mldn/”,结果无法显示该网页。且上一步成功显示过的服务器首页也无法显示了。    诚问专业人士如何解决。 content = 是不是 http://locahost:8080######tomcat默认安装好的端口号是8080,######没有配置端口!###### 贴出server.xml看看哦 ###### http://localhost:8080/mldn/ 试试 ######检查本地是否启动成功 http://localhost:8080  是否可以正常访问,###### 服务器安装成功了,但服务器的虚拟目录配置没成功,输入http://localhost:8080/mldn/后的显示是下图,有尝试过把conf/web.xml文件中的listing下面的false改为true。 还请各位帮忙看看如何解决,谢谢! ######在服务中启动。Apache tomcat 6服务。你之前有没有配置过tomcat系统环境变量。如果有。这个是不会成功的。要修改一下到相应的路径~######差不多的问题哎,同样是进不去tomcat的那个小猫的画面,但是我在Eclipse中启动tomcat的话还是可以调用的,之前能用,我就改了下services.msc中的那个服务,具体啥原因我也不知道了

montos 2020-05-29 22:44:26 0 浏览量 回答数 0

回答

1.什么是爬虫 爬虫,即网络爬虫,大家可以理解为在网络上爬行的一直蜘蛛,互联网就比作一张大网,而爬虫便是在这张网上爬来爬去的蜘蛛咯,如果它遇到资源,那么它就会抓取下来。想抓取什么?这个由你来控制它咯。 比如它在抓取一个网页,在这个网中他发现了一条道路,其实就是指向网页的超链接,那么它就可以爬到另一张网上来获取数据。这样,整个连在一起的大网对这之蜘蛛来说触手可及,分分钟爬下来不是事儿。 2.浏览网页的过程 在用户浏览网页的过程中,我们可能会看到许多好看的图片,比如 http://image.baidu.com/ ,我们会看到几张的图片以及百度搜索框,这个过程其实就是用户输入网址之后,经过DNS服务器,找到服务器主机,向服务器发出一个请求,服务器经过解析之后,发送给用户的浏览器 HTML、JS、CSS 等文件,浏览器解析出来,用户便可以看到形形色色的图片了。 因此,用户看到的网页实质是由 HTML 代码构成的,爬虫爬来的便是这些内容,通过分析和过滤这些 HTML 代码,实现对图片、文字等资源的获取。 3.URL的含义 URL,即统一资源定位符,也就是我们说的网址,统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。 URL的格式由三部分组成:①第一部分是协议(或称为服务方式)。②第二部分是存有该资源的主机IP地址(有时也包括端口号)。③第三部分是主机资源的具体地址,如目录和文件名等。爬虫爬取数据时必须要有一个目标的URL才可以获取数据,因此,它是爬虫获取数据的基本依据,准确理解它的含义对爬虫学习有很大帮助。 环境的配置 学习Python,当然少不了环境的配置,最初我用的是Notepad++,不过发现它的提示功能实在是太弱了,于是,在Windows下我用了 PyCharm,在Linux下我用了Eclipse for Python,另外还有几款比较优秀的IDE,大家可以参考这篇文章 学习Python推荐的IDE 。好的开发工具是前进的推进器,希望大家可以找到适合自己的IDE 作者:谢科链接:https://www.zhihu.com/question/20899988/answer/24923424来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 “入门”是良好的动机,但是可能作用缓慢。如果你手里或者脑子里有一个项目,那么实践起来你会被目标驱动,而不会像学习模块一样慢慢学习。另外如果说知识体系里的每一个知识点是图里的点,依赖关系是边的话,那么这个图一定不是一个有向无环图。因为学习A的经验可以帮助你学习B。因此,你不需要学习怎么样“入门”,因为这样的“入门”点根本不存在!你需要学习的是怎么样做一个比较大的东西,在这个过程中,你会很快地学会需要学会的东西的。当然,你可以争论说需要先懂python,不然怎么学会python做爬虫呢?但是事实上,你完全可以在做这个爬虫的过程中学习python :D看到前面很多答案都讲的“术”——用什么软件怎么爬,那我就讲讲“道”和“术”吧——爬虫怎么工作以及怎么在python实现。先长话短说summarize一下:你需要学习基本的爬虫工作原理基本的http抓取工具,scrapyBloom Filter: Bloom Filters by Example如果需要大规模网页抓取,你需要学习分布式爬虫的概念。其实没那么玄乎,你只要学会怎样维护一个所有集群机器能够有效分享的分布式队列就好。最简单的实现是python-rq: https://github.com/nvie/rqrq和Scrapy的结合:darkrho/scrapy-redis · GitHub后续处理,网页析取(grangier/python-goose · GitHub),存储(Mongodb)以下是短话长说:说说当初写的一个集群爬下整个豆瓣的经验吧。1)首先你要明白爬虫怎样工作。想象你是一只蜘蛛,现在你被放到了互联“网”上。那么,你需要把所有的网页都看一遍。怎么办呢?没问题呀,你就随便从某个地方开始,比如说人民日报的首页,这个叫initial pages,用$表示吧。在人民日报的首页,你看到那个页面引向的各种链接。于是你很开心地从爬到了“国内新闻”那个页面。太好了,这样你就已经爬完了俩页面(首页和国内新闻)!暂且不用管爬下来的页面怎么处理的,你就想象你把这个页面完完整整抄成了个html放到了你身上。突然你发现, 在国内新闻这个页面上,有一个链接链回“首页”。作为一只聪明的蜘蛛,你肯定知道你不用爬回去的吧,因为你已经看过了啊。所以,你需要用你的脑子,存下你已经看过的页面地址。这样,每次看到一个可能需要爬的新链接,你就先查查你脑子里是不是已经去过这个页面地址。如果去过,那就别去了。好的,理论上如果所有的页面可以从initial page达到的话,那么可以证明你一定可以爬完所有的网页。那么在python里怎么实现呢?很简单import Queue initial_page = "http://www.renminribao.com" url_queue = Queue.Queue()seen = set() seen.insert(initial_page)url_queue.put(initial_page) while(True): #一直进行直到海枯石烂 if url_queue.size()>0: current_url = url_queue.get() #拿出队例中第一个的url store(current_url) #把这个url代表的网页存储好 for next_url in extract_urls(current_url): #提取把这个url里链向的url if next_url not in seen: seen.put(next_url) url_queue.put(next_url) else: break 写得已经很伪代码了。所有的爬虫的backbone都在这里,下面分析一下为什么爬虫事实上是个非常复杂的东西——搜索引擎公司通常有一整个团队来维护和开发。2)效率如果你直接加工一下上面的代码直接运行的话,你需要一整年才能爬下整个豆瓣的内容。更别说Google这样的搜索引擎需要爬下全网的内容了。问题出在哪呢?需要爬的网页实在太多太多了,而上面的代码太慢太慢了。设想全网有N个网站,那么分析一下判重的复杂度就是N*log(N),因为所有网页要遍历一次,而每次判重用set的话需要log(N)的复杂度。OK,OK,我知道python的set实现是hash——不过这样还是太慢了,至少内存使用效率不高。通常的判重做法是怎样呢?Bloom Filter. 简单讲它仍然是一种hash的方法,但是它的特点是,它可以使用固定的内存(不随url的数量而增长)以O(1)的效率判定url是否已经在set中。可惜天下没有白吃的午餐,它的唯一问题在于,如果这个url不在set中,BF可以100%确定这个url没有看过。但是如果这个url在set中,它会告诉你:这个url应该已经出现过,不过我有2%的不确定性。注意这里的不确定性在你分配的内存足够大的时候,可以变得很小很少。一个简单的教程:Bloom Filters by Example注意到这个特点,url如果被看过,那么可能以小概率重复看一看(没关系,多看看不会累死)。但是如果没被看过,一定会被看一下(这个很重要,不然我们就要漏掉一些网页了!)。 [IMPORTANT: 此段有问题,请暂时略过]好,现在已经接近处理判重最快的方法了。另外一个瓶颈——你只有一台机器。不管你的带宽有多大,只要你的机器下载网页的速度是瓶颈的话,那么你只有加快这个速度。用一台机子不够的话——用很多台吧!当然,我们假设每台机子都已经进了最大的效率——使用多线程(python的话,多进程吧)。3)集群化抓取爬取豆瓣的时候,我总共用了100多台机器昼夜不停地运行了一个月。想象如果只用一台机子你就得运行100个月了...那么,假设你现在有100台机器可以用,怎么用python实现一个分布式的爬取算法呢?我们把这100台中的99台运算能力较小的机器叫作slave,另外一台较大的机器叫作master,那么回顾上面代码中的url_queue,如果我们能把这个queue放到这台master机器上,所有的slave都可以通过网络跟master联通,每当一个slave完成下载一个网页,就向master请求一个新的网页来抓取。而每次slave新抓到一个网页,就把这个网页上所有的链接送到master的queue里去。同样,bloom filter也放到master上,但是现在master只发送确定没有被访问过的url给slave。Bloom Filter放到master的内存里,而被访问过的url放到运行在master上的Redis里,这样保证所有操作都是O(1)。(至少平摊是O(1),Redis的访问效率见:LINSERT – Redis)考虑如何用python实现:在各台slave上装好scrapy,那么各台机子就变成了一台有抓取能力的slave,在master上装好Redis和rq用作分布式队列。代码于是写成#slave.py current_url = request_from_master()to_send = []for next_url in extract_urls(current_url): to_send.append(next_url) store(current_url);send_to_master(to_send) master.py distributed_queue = DistributedQueue()bf = BloomFilter() initial_pages = "www.renmingribao.com" while(True): if request == 'GET': if distributed_queue.size()>0: send(distributed_queue.get()) else: break elif request == 'POST': bf.put(request.url) 好的,其实你能想到,有人已经给你写好了你需要的:darkrho/scrapy-redis · GitHub4)展望及后处理虽然上面用很多“简单”,但是真正要实现一个商业规模可用的爬虫并不是一件容易的事。上面的代码用来爬一个整体的网站几乎没有太大的问题。但是如果附加上你需要这些后续处理,比如有效地存储(数据库应该怎样安排)有效地判重(这里指网页判重,咱可不想把人民日报和抄袭它的大民日报都爬一遍)有效地信息抽取(比如怎么样抽取出网页上所有的地址抽取出来,“朝阳区奋进路中华道”),搜索引擎通常不需要存储所有的信息,比如图片我存来干嘛...及时更新(预测这个网页多久会更新一次)

xuning715 2019-12-02 01:10:40 0 浏览量 回答数 0

问题

什么是opcache? Zend Optimizer强势来临 : 配置报错 

kun坤 2020-06-03 15:43:57 6 浏览量 回答数 1

问题

在Eclipse中配置Heritrix HTTP ERROR 403.10 禁止访问:配置无效

kun坤 2020-05-27 20:05:38 7 浏览量 回答数 1

问题

Vue面试题汇总【精品问答】

问问小秘 2020-05-25 18:02:28 11132 浏览量 回答数 2

问题

深入分析字符编码之五-常见问题分析

夏天的日子 2019-12-01 21:13:23 4211 浏览量 回答数 0

问题

Nginx性能为什么如此吊

小柒2012 2019-12-01 21:20:47 15038 浏览量 回答数 3

问题

【精品问答】Java技术1000问(1)

问问小秘 2019-12-01 21:57:43 37578 浏览量 回答数 11

问题

【Java学习全家桶】1460道Java热门问题,阿里百位技术专家答疑解惑

管理贝贝 2019-12-01 20:07:15 27612 浏览量 回答数 19

问题

API常见错误码表上线-就帮你到这里了

仙游 2019-12-01 21:00:08 5576 浏览量 回答数 1

回答

Re“零基础”系列课程如何在ECS上快递搭建一个WordPress站点 怎么获得云币?是不是回复帖子会有? ------------------------- Re“零基础”系列课程如何在ECS上快递搭建一个WordPress站点 谢谢 ------------------------- 第二步,安装完之后,没有80、9000端口 第二步,安装完之后,没有80、9000端口,这个是什么原因,该怎么解决?求助 ------------------------- 回 12楼larryli的帖子 第二步,安装完之后,没有80、9000端口,这个是什么原因,该怎么解决?求助啊 ------------------------- 回 145楼training的帖子 楼主好,感谢您的解答,我刚看到您的回复。想问一下,有没有pw论坛的安装教程?,还有,往后是不是重装系统后,也可以搭建WordPress?多谢 ------------------------- Re“零基础”系列课程如何在ECS上快递搭建一个WordPress站点 楼主你好,WordPress我搭建好了。其中遇到过一个问题,已经解决,向您汇报一下,第一步安装“一键安装包”的时候没有安装成功,后来是将系统换成了“centos”,然后才安装成功,所以,ECS的操作系统最好选用这个。 最后,我已经把站点安装好了,希望楼主后续发一些比较适合菜鸟的WordPress应用技巧,多谢。 ------------------------- 回 209楼training的帖子 楼主大大好,我也遇到了198楼那哥们遇到的问题,站点都建好了,而且用  http:/IP地址/wordpress/   可以打开站点,但是,直接输IP地址或者域名,打开后是403 Forbidden  ,请问这个是什么原因?是不是因为没有进行域名绑定?应该怎么操作。我的域名是今天刚通过备案的,才发现这个问题。诚心求教,多谢! ------------------------- 回 198楼伊奇的帖子 哥们,你的问题解决了吗?403 Forbidden 错误,我也遇到了 ------------------------- 回 197楼上云服务的帖子 又遇到问题了,直接输入域名,显示403 Forbidden,是不是需要域名绑定?我去搜了下相关教程,看的云里雾里,希望能给出后续建站的一些指导。多谢 ------------------------- 回 217楼training的帖子 多谢楼主耐心讲解。是不是还可以修改nginx配置文件,把根目录修改成www下面的wordpress?我看您发的第三个视频有修改nginx的过程,是把根目录www/phpwind改成了www。(我不知道说的对不对,这是我理解的,完全小白啊) ------------------------- Re“零基础”系列课程如何在ECS上快递搭建一个WordPress站点 楼主大大好,我按照您的指导,将那个文件放在了www下面,确实可以打开,但是,网址那一栏还是显示的  http://域名/wordpress. 之后,我修改了nginx配置,将根目录(应该是根目录吧)改成了www/wordpress,之后,输入域名,确实能打开,但是,点击返回首页或者登陆,都失败。 我又将nginx配置还原,就是根目录那块儿,我重新按照 http://域名/wordpress.输入网址,能打来,然后登陆,修改了 wordpress的设置,就是网址 之后,我再修改nginx配置,将根目录改成了www/wordpress,之后,浏览器输入域名,可以打开,然后正常登陆。 不知道这样对不对。我对那个代码完全懵逼,就是觉得从逻辑上应该是域名指向某个文件夹,也就是根目录,具体怎么操作,都是照猫画虎,跟着视频走的。 我的网站是www.pajidy.com 我想问下,为什么首页那个建站时间没有显示,而且导航栏去哪了。这些应该是琐碎的操作了,我就是吐槽一下 ------------------------- 回 172楼training的帖子 大神,我按照171楼和172楼的方法,做了修改,为什么最后登陆phpmyadmin的时候显示 “#1045 无法登录 MySQL 服务器” 密码都是对的 我也去百度了一下,是不是修改phpmyadmin的文件夹地址之后,权限出现了问题? 该怎么解决啊,多谢 ------------------------- 回 228楼风愿的帖子 是不是你之前的安装有问题?还有就是选择合适的操作系统 ------------------------- Re“零基础”系列课程如何在ECS上快递搭建一个WordPress站点 关于出现连接数据库错误,我找了一个教程,不知道是不是这么解决,粘贴出来。(我的网站是:啪几网www.pajidy.com) 以前一直用虚机,这次改用了阿里云服务器,因为这个站点纯粹就是个人喜好建立的,所以主机配置比较低,单核1G,1M独立外网带宽,环境是centos6.5 64位,nginx mysql 位安装管理面板,自己对这方面也完全是白丁,整个服务器环境的搭设全部按照阿里云官方的教程进行,整体弄完后,把自己的WORDPRESS搬上去,也还算顺利。不过运行了半个多余突然出现问题。打开网页的时候显示“建立数据库连接时出错”,通过后台链接MYSQL发现报错无法连接,自己也不太懂,就直接重启了服务器,一切正常。不过出现这种问题心理多少有些担忧,就在后台通过看了下进程,一看发现一个php-fpm的进程有很多子进程,且占用内存非常大,很短时间1G内存空闲就只剩下不到300M,而CPU使用率却很低。 找了个在线压力测试,并发30,进行3分钟压力访问,发现内存很快就所剩无几了,直到低于90M以后突然恢复到270M空闲时,发现MYSQL的进程被KILL了。压力测试结束后,内存并没有被释放。这就是问题所在了。 通过百度查询得知,PHP-CGI会释放内存,但并不会把内存归还系统,所以当过多的PHP-FPM子进程存在时,内存就会一点点被吃干,最终导致溢出。解决方法网上貌似很多,但看起来有点天书,选了一种比较好理解易操作的方法,就是修改php-fpm.conf文件,控制这个进程的数量。 找这个文件我就费了很大劲,网上的文章都不说这个文件在哪,对于小白来说,就有点吃力,最后找到,这个文件在php安装文件夹心下的etc文件夹里,如果是阿里云的话,应该就是 /alidata/server/php/etc里。 打开编辑这个文件,可以通过FTP或者LINUX命令行进行修改。主要涉及几个参数。 pm 这个是设置运行方式的,分别是static(静态)或者dynamic(动态) 默认应该是在214行左右,显示为 pm = dynamic,意思就是动态方式,如果内存小,比如512M,1G,2G之类,建议使用动态。 pm.max_children:静态方式下开启的php-fpm进程数量,这个是有在pm模式为static的情况下生效。 pm.start_servers:动态方式下的起始php-fpm进程数量,这个是pm位dynamic模式下需要设置的参数,意思就是启动运行时建立的起始php-fpm进程数量 大概在230行左右,我设置后的,pm.start_servers = 3 pm.min_spare_servers:动态方式下的最小php-fpm进程数 大概位置在235行,我设置后的,pm.min_spare_servers = 3 pm.max_spare_servers:动态方式下的最大php-fpm进程数量 大概位置在240行,我设置后的,pm.max_spare_servers = 10 还有一个就是pm.max_requests,这个在百度查询都的结果就是接受多少次请求后自动重启进程的,默认是500,不知道这个数值具体是指什么的,因为重启就意味着把php占用的空闲内存释放给系统,不过一旦这个值设置的过低,可能会导致所有的php-fpm进程在几乎同时重启,而重启过程中CPU占用率会飙升,且PHP会拒绝访问请求,所以这个值不能过低,按照我这个小白理解就是宁可适当的减少运行的子进程数,也不能过分的降低这个值。不知道对不对 大概位置在251行,我设置后的,pm.max_requests = 200 这就是我设置后的几个参数,保存后重启服务,再次观察,内存占用率基本稳定在400M,缓慢增长,经过了一晚的再次进行30并发的压力测试,虽然内存和CPU同样会在此时爆发增长,但是这个并发数还是挺住了,且在压力测试结束后,内存大部分被释放给系统了。最后又在wordpress安装了wp-super-cache缓存插件,很大程度降低了访问页面时对服务器的压力。 根据百度查到的,配置php-fpm并非由固定的模式,他基本是要找到一个平衡,对于我这样的小白来说,只能一点点的试,先改成这样运行一段时间观察下,后续再做调整,毕竟自己是小白,很多东西都得摸索,短时间内也无法确定效果,慢慢试吧。 linux命令行  top命令可以查看动态的系统资源占用情况,  ps aux可以查看当时占用系统资源的情况,非动态。 ------------------------- 回 252楼czfcyj的帖子 去看看171楼和172楼,感兴趣也可以看看我的发言 ------------------------- Re“零基础”系列课程如何在ECS上快递搭建一个WordPress站点 求助大神,我的数据库登陆不上去了,密码和用户名都对,显示#1045 错误 ------------------------- 回 247楼training的帖子 求助大神,我的数据库登陆不上去了,密码和用户名都对,显示#1045 错误

原不周 2019-12-01 23:22:13 0 浏览量 回答数 0

问题

支付宝小程序云训练营优秀学员提问来啦

问问小秘 2020-06-15 15:57:38 159 浏览量 回答数 1

问题

阿里云的远程经常断开,无法解决

boerthaaa 2019-12-01 21:59:01 10536 浏览量 回答数 4

回答

DMS for linux 6月23日更新预告,敬请期待 更新啦!更新啦!更新啦!本周(6月28号)dms for linux 将发布新版本,内容如下,尽情期待         1、命令终端支持rz文件上传命令,只要能ssh登陆,无论跳几级,都可以上传。支持目录哦,真心赞!具体包括: 文件/目录点击上传; 文件/目录拖动上传; 命令行文件上传进度;                       2、服务管理兼容centos7+的systemd协议的管理,提供更高效地服务管理模式                    3、右上角开放更直接的问题反馈入口,链接可以直达本帖,如果您在使用过程中遇到什么问题,或者对我们产品有什么诉求,欢迎轰炸我们程序员GG哦,我们会第一时间内反馈。 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 如果您第一次点入本帖,欢迎使用阿里云数据管理产品: https://dms.console.aliyun.com/#/dms/rsList 阿里云数据管理旨在一站式管理您所有云上资源 ------------------------- 回 2楼(龙吟风) 的帖子 数据管理DMS支持数据库管理、Linux管理,无需安装,易用专业,目前在云上已经有30W用户,你可以试下 https://www.aliyun.com/product/dms ------------------------- 回 6楼(大一中) 的帖子 谢谢支持,O(∩_∩)O哈哈~ ------------------------- 各位在使用dms的过程中遇到什么问题,或者有什么建议,直接在这个帖子下面提问喔 ------------------------- 回 9楼(付一二) 的帖子 您好,谢谢反馈,您说的这种是不是针对类似于apache的应用配置管理?我们目前已经正在计划深挖常用应用的管理功能包括apache,mysql等,包括配置管理,服务性能监控等,这个的确对服务的运维很有用处。我们会在后续版本加入此功能,敬请期待哦,O(∩_∩)O~。 ------------------------- 回 11楼(cokll) 的帖子        抱歉给您工作带来不便,请问这个问题只是出现在实时监控模块吗?其他模块没有报这个错么?        这个问题主要原因是您当前主机的sshd服务对单个session上的channel数量作了限制导致的。dms for linux 的实时监控模块在加载页面时需要建立多个channel执行命令,如果当前保持的channel的数量超出您主机的限制,继续建立channel就会抛出channel未打开的错误,这个配置项是/etc/ssh/sshd_config 里面的MaxSessions的配置。        我刚刚检查了一下我们的代码,发现代码中存在长时间保持单个channel的情况,导致新建channel不成功。我们代码中的bug将在下一个版本修复(约7月13号(周三))。届时请如果还有问题,请及时联系我们喔。       再次感谢您的反馈。    ------------------------- 回 11楼(cokll) 的帖子 您好,麻烦检查下您机器上的/etc/ssh/sshd_config 中是否有配置过MaxSessions这个参数,如果最大的session数被限制为1,您主机只能支持终端登陆,就用不了dms for linux的其他的功能了。 我们经过测试,能支持dms的最小的session数量为3,也就是MaxSession的值应当不小于3(默认值为10)。如果可以的话,您可以修正下这个配置然后重启下sshd服务。 如果还有问题,烦请及时反馈,谢谢亲 ------------------------- 回 15楼(山水佳) 的帖子 您好, 抱歉回复晚了,请问您是使用实时监控的查看线程栈的功能遇到这个错误的吗?实时监控模块一般不会抛出这个错,可否截一下图看看? ------------------------- 回 18楼(caesar.w.h) 的帖子 您好, 感谢您的反馈,请问您当前用的是什么浏览器?有没有在浏览器上做过某些安全性的限制? 这个问题一般是浏览器禁用了跨域请求导致我们dms控制台的登陆请求没法到达dms应用的服务器。 我们建议一般使用chrome或者火狐浏览器访问dms,如果可以的话可以换一下浏览器重新尝试下。。 如果还有问题请保持沟通过哦O(∩_∩)O~ ------------------------- 回 22楼(caesar.w.h) 的帖子 您好,抱歉回复晚了,请问是所有数据库实例都添加不了还是仅一个实例是这样? 如果仅一个实例,那么这个实例是什么类型的数据库? 如果所有实例都添加不了,有没有尝试过把浏览器卸载重装后结果还是一样?或者是,用一台新机器上的浏览器试试是否是相同的情况? 这个问题我们之前是遇到过的,主要原因是添加数据库的请求没有发送出去,还没到连接数据库那一步呢,可能是浏览器阻拦的原因,上次我们也是通过更换浏览器解决的。麻烦您按照上面的步骤再尝试下,如果还不行的话,还请保持联系噢。 感谢您对dms的支持O(∩_∩)O~ ------------------------- 回 24楼(無名塵客) 的帖子 您好,这个问题您是否已经通过工单和我们客服团队反馈过? 抱歉给您带来不便,这个问题具体原因是这样的: 您这个实例是mysql5.1版本,不支持INNODB_BUFFER_POOL_READ_REQUESTS,INNODB_BUFFER_POOL_READS这两个参数导致我们dms首页会出现500错误。目前dms支持的mysql版本是5.4之后的版本。 这个问题涉及到对老版本mysql的兼容,具体怎么改得和我们负责这一块的开发人员沟通下 ------------------------- 回 26楼(caesar.w.h) 的帖子 您好,请问用谷歌浏览器具体是什么情况?登陆会报什么错? 目前我们后台统计,使用dms的大部分是chrome用户,没有遇到类似的问题,可能是浏览器中存在某些插件原因吧。 ------------------------- 回 30楼(斯斯) 的帖子 谢谢反馈,这个问题我们已经在看,主要原因是我们现在的监控模块对部分主机的性能数据兼容性不够强,也说明我们的代码健壮性不够强。 目前我们正在查看日志寻找错误原因,预计下个发布可以修复(约下周二之前),届时麻烦线上验证下。谢谢 ------------------------- 引用第32楼ivmmff于2016-07-27 14:31发表的  : 命令终端不能粘贴命令太蛋疼 [url=https://bbs.aliyun.com/job.php?action=topost&tid=286015&pid=807524][/url] 您好,目前我们没有支持右键粘贴的功能。 您可以使用Ctrl + V、Shift + Insert 等方式进行粘贴。 后续我们会支持右键粘贴的功能,感谢您的关注。 ------------------------- 回 31楼(galphy) 的帖子 你好,目前我们没有对命令终端的操作超时做控制,正常情况下没有操作,至少6分钟之后才会断开,如果少于6分钟,可能是您主机设置了空闲超时时间。 请参考一下: http://blog.chinaunix.net/uid-8473611-id-3069386.html 后续我们会加上链接超时控制,届时您可以自己设置超时时间,敬请期待。 ------------------------- 回 29楼(胡胡abc) 的帖子 您好,请问这台主机是linux是什么发行版本,是ECS么? ------------------------- 回 30楼(斯斯) 的帖子 不好意思哦,刚刚我们翻了下日志,并没能找到有记录ArrayIndexOutOfBound的错误。为了节省沟通成本,能否提供一下您当前主机的ip,和权限比较低的账号,密码供我们测试下? 如果可以的话能否提供下旺旺账号,我们可以去加你下。或者可以加我的账号,旺旺搜索"帅博"。 希望能高效地解决您的问题,感谢支持。 ------------------------- 回 43楼(不羁的行者) 的帖子 你好,目前文件管理模块还不支持上传文件夹。 建议打开dms的命令终端,直接输入rz命令上传噢。支持文件,文件夹,批量上传,拖动上传,功能很好用噢,O(∩_∩)O~ ------------------------- 回 48楼(fightgod) 的帖子 您好,我们以后会加入设置终端声音的功能,下个版本我们会暂时先去掉终端声音,等设置功能上线后再加上。O(∩_∩)O~ ------------------------- 回 50楼(fightgod) 的帖子 您好,windows系统和linux相比其内部机制和实现方式要复杂很多,目前我们的技术宅们正努力探索中。。。。 一旦技术方案定下来我们就会开展实施支持windows系统,敬请期待哦O(∩_∩)O~ ------------------------- 回 63楼(woaj01) 的帖子 您好,请问您的那台主机在ECS上已被删除多久了?我们这边也是通过api从ECS那边取的主机列表,api返回的数据会有一定的延迟,但也不会很久。 如果您的主机已经删除很久了,麻烦请告诉我们,我们会去和ECS方面沟通,解决这一问题 ------------------------- 回 66楼(fightgod) 的帖子 您好,您提的批量操作命令的界面,我们会认真考虑,如何去优化在主机较多的时候用户对终端返回的信息的同步。 您说的批量文件上传方面,我们恰巧将近期上线批量rz的功能,敬请期待哦O(∩_∩)O~ ------------------------- 回 69楼(初一) 的帖子 你好,能否详述一下你遇到的问题,是什么功能授权失败? ------------------------- 回 72楼(汇爱家) 的帖子 您好,您的建议我们会记录,并选择合适的配色方案,改进我们的用户体验,感谢反馈 ------------------------- 回 75楼(初一) 的帖子 您好,目前dms for linux的文件管理是支持更改文件所有者的。您可以右键->授权,弹出的授权框中可以更改所有者和用户组的信息。                                                                                      ------------------------- 回 76楼(meenet) 的帖子 您好,您是指怎么在线编辑文件? 我们的文件管理的功能可以直接编辑和保存文件的,如果是二进制文件还可以直接用二进制的方式打开,类似于UE的功能。 ------------------------- 回 79楼(啊彬彬) 的帖子 你好,请问你重启的是什么服务?一些系统服务是不能关闭的,关闭会导致系统不稳定甚至崩溃,重启下主机就可以恢复了。 ------------------------- 回 85楼(koder) 的帖子 您好,如果使用证书登录后目前仅可以查看非sudo权限的服务状态,需要sudo权限的服务,暂时是获取不到信息,通过控制台的系统管理-->服务管理可以进入相应页面。如果您想看所有服务的状态请先到控制台切换密码登陆。您的密码在我们后台都是经过严格加密处理的,所以您不用担心安全问题。 后续我们会针对证书登录用户,提供临时输入密码的交互。敬请继续关注我们dms产品 ------------------------- 回 86楼(樱花雾翔eva) 的帖子 您好,抱歉,我们dms控制台目前不支持删除数据库和ecs资源,资源列表是从ecs和rds控制台同步过来的,如果有资源过期被释放,dms控制台上相应也会释放。 我们后续控制台会加入资源隐藏的选项,可以暂时隐藏暂时不用的资源。感谢关注dms产品 ------------------------- 回 92楼(jasonyao525) 的帖子 您好,ssh服务关闭后就不能使用dms了,命令终端也不可以使用,您可以通过ecs控制台或者联系客服来重新开启该服务。 ------------------------- 回 90楼(jrl_limeng) 的帖子 您好,终端的颜色我们之前已经调整过,能否截个图看看?

数据管理dms 2019-12-02 02:01:24 0 浏览量 回答数 0

回答

在开始谈我对架构本质的理解之前,先谈谈对今天技术沙龙主题的个人见解,千万级规模的网站感觉数量级是非常大的,对这个数量级我们战略上 要重 视 它 , 战术上又 要 藐 视 它。先举个例子感受一下千万级到底是什么数量级?现在很流行的优步(Uber),从媒体公布的信息看,它每天接单量平均在百万左右, 假如每天有10个小时的服务时间,平均QPS只有30左右。对于一个后台服务器,单机的平均QPS可以到达800-1000,单独看写的业务量很简单 。为什么我们又不能说轻视它?第一,我们看它的数据存储,每天一百万的话,一年数据量的规模是多少?其次,刚才说的订单量,每一个订单要推送给附近的司机、司机要并发抢单,后面业务场景的访问量往往是前者的上百倍,轻松就超过上亿级别了。 今天我想从架构的本质谈起之后,希望大家理解在做一些建构设计的时候,它的出发点以及它解决的问题是什么。 架构,刚开始的解释是我从知乎上看到的。什么是架构?有人讲, 说架构并不是一 个很 悬 乎的 东西 , 实际 上就是一个架子 , 放一些 业务 和算法,跟我们的生活中的晾衣架很像。更抽象一点,说架构其 实 是 对 我 们 重复性业务 的抽象和我 们 未来 业务 拓展的前瞻,强调过去的经验和你对整个行业的预见。 我们要想做一个架构的话需要哪些能力?我觉得最重要的是架构师一个最重要的能力就是你要有 战 略分解能力。这个怎么来看呢: 第一,你必须要有抽象的能力,抽象的能力最基本就是去重,去重在整个架构中体现在方方面面,从定义一个函数,到定义一个类,到提供的一个服务,以及模板,背后都是要去重提高可复用率。 第二, 分类能力。做软件需要做对象的解耦,要定义对象的属性和方法,做分布式系统的时候要做服务的拆分和模块化,要定义服务的接口和规范。 第三, 算法(性能),它的价值体现在提升系统的性能,所有性能的提升,最终都会落到CPU,内存,IO和网络这4大块上。 这一页PPT举了一些例子来更深入的理解常见技术背后的架构理念。 第一个例子,在分布式系统我们会做 MySQL分 库 分表,我们要从不同的库和表中读取数据,这样的抽象最直观就是使用模板,因为绝大多数SQL语义是相同的,除了路由到哪个库哪个表,如果不使用Proxy中间件,模板就是性价比最高的方法。 第二看一下加速网络的CDN,它是做速度方面的性能提升,刚才我们也提到从CPU、内存、IO、网络四个方面来考虑,CDN本质上一个是做网络智能调度优化,另一个是多级缓存优化。 第三个看一下服务化,刚才已经提到了,各个大网站转型过程中一定会做服务化,其实它就是做抽象和做服务的拆分。第四个看一下消息队列,本质上还是做分类,只不过不是两个边际清晰的类,而是把两个边际不清晰的子系统通过队列解构并且异步化。新浪微博整体架构是什么样的 接下我们看一下微博整体架构,到一定量级的系统整个架构都会变成三层,客户端包括WEB、安卓和IOS,这里就不说了。接着还都会有一个接口层, 有三个主要作用: 第一个作用,要做 安全隔离,因为前端节点都是直接和用户交互,需要防范各种恶意攻击; 第二个还充当着一个 流量控制的作用,大家知道,在2014年春节的时候,微信红包,每分钟8亿多次的请求,其实真正到它后台的请求量,只有十万左右的数量级(这里的数据可能不准),剩余的流量在接口层就被挡住了; 第三,我们看对 PC 端和移 动 端的需求不一样的,所以我们可以进行拆分。接口层之后是后台,可以看到微博后台有三大块: 一个是 平台服 务, 第二, 搜索, 第三, 大数据。到了后台的各种服务其实都是处理的数据。 像平台的业务部门,做的就是 数据存储和读 取,对搜索来说做的是 数据的 检 索,对大数据来说是做的数据的 挖掘。微博其实和淘宝是很类似 微博其实和淘宝是很类似的。一般来说,第一代架构,基本上能支撑到用户到 百万 级别,到第二代架构基本能支撑到 千万 级别都没什么问题,当业务规模到 亿级别时,需要第三代的架构。 从 LAMP 的架构到面向服 务 的架构,有几个地方是非常难的,首先不可能在第一代基础上通过简单的修修补补满足用户量快速增长的,同时线上业务又不能停, 这是我们常说的 在 飞 机上 换 引擎的 问题。前两天我有一个朋友问我,说他在内部推行服务化的时候,把一个模块服务化做完了,其他部门就是不接。我建议在做服务化的时候,首先更多是偏向业务的梳理,同时要找准一个很好的切入点,既有架构和服务化上的提升,业务方也要有收益,比如提升性能或者降低维护成本同时升级过程要平滑,建议开始从原子化服务切入,比如基础的用户服务, 基础的短消息服务,基础的推送服务。 第二,就是可 以做无状 态 服 务,后面会详细讲,还有数据量大了后需要做数据Sharding,后面会将。 第三代 架构 要解决的 问题,就是用户量和业务趋于稳步增加(相对爆发期的指数级增长),更多考虑技术框架的稳定性, 提升系统整体的性能,降低成本,还有对整个系统监控的完善和升级。 大型网站的系统架构是如何演变的 我们通过通过数据看一下它的挑战,PV是在10亿级别,QPS在百万,数据量在千亿级别。我们可用性,就是SLA要求4个9,接口响应最多不能超过150毫秒,线上所有的故障必须得在5分钟内解决完。如果说5分钟没处理呢?那会影响你年终的绩效考核。2015年微博DAU已经过亿。我们系统有上百个微服务,每周会有两次的常规上线和不限次数的紧急上线。我们的挑战都一样,就是数据量,bigger and bigger,用户体验是faster and faster,业务是more and more。互联网业务更多是产品体验驱动, 技 术 在 产 品 体验上最有效的贡献 , 就是你的性能 越来越好 。 每次降低加载一个页面的时间,都可以间接的降低这个页面上用户的流失率。微博的技术挑战和正交分解法解析架构 下面看一下 第三代的 架构 图 以及 我 们 怎么用正交分解法 阐 述。 我们可以看到我们从两个维度,横轴和纵轴可以看到。 一个 维 度 是 水平的 分层 拆分,第二从垂直的维度会做拆分。水平的维度从接口层、到服务层到数据存储层。垂直怎么拆分,会用业务架构、技术架构、监控平台、服务治理等等来处理。我相信到第二代的时候很多架构已经有了业务架构和技术架构的拆分。我们看一下, 接口层有feed、用户关系、通讯接口;服务层,SOA里有基层服务、原子服务和组合服务,在微博我们只有原子服务和组合服务。原子服务不依赖于任何其他服务,组合服务由几个原子服务和自己的业务逻辑构建而成 ,资源层负责海量数据的存储(后面例子会详细讲)。技 术框架解决 独立于 业务 的海量高并发场景下的技术难题,由众多的技术组件共同构建而成 。在接口层,微博使用JERSY框架,帮助你做参数的解析,参数的验证,序列化和反序列化;资源层,主要是缓存、DB相关的各类组件,比如Cache组件和对象库组件。监 控平台和服 务 治理 , 完成系统服务的像素级监控,对分布式系统做提前诊断、预警以及治理。包含了SLA规则的制定、服务监控、服务调用链监控、流量监控、错误异常监控、线上灰度发布上线系统、线上扩容缩容调度系统等。 下面我们讲一下常见的设计原则。 第一个,首先是系统架构三个利器: 一个, 我 们 RPC 服 务组 件 (这里不讲了), 第二个,我们 消息中 间 件 。消息中间件起的作用:可以把两个模块之间的交互异步化,其次可以把不均匀请求流量输出为匀速的输出流量,所以说消息中间件 异步化 解耦 和流量削峰的利器。 第三个是配置管理,它是 代码级灰度发布以及 保障系统降级的利器。 第二个 , 无状态 , 接口 层 最重要的就是无状 态。我们在电商网站购物,在这个过程中很多情况下是有状态的,比如我浏览了哪些商品,为什么大家又常说接口层是无状态的,其实我们把状态从接口层剥离到了数据层。像用户在电商网站购物,选了几件商品,到了哪一步,接口无状态后,状态要么放在缓存中,要么放在数据库中, 其 实 它并不是没有状 态 , 只是在 这 个 过 程中我 们 要把一些有状 态 的 东 西抽离出来 到了数据层。 第三个, 数据 层 比服 务层 更需要 设计,这是一条非常重要的经验。对于服务层来说,可以拿PHP写,明天你可以拿JAVA来写,但是如果你的数据结构开始设计不合理,将来数据结构的改变会花费你数倍的代价,老的数据格式向新的数据格式迁移会让你痛不欲生,既有工作量上的,又有数据迁移跨越的时间周期,有一些甚至需要半年以上。 第四,物理结构与逻辑结构的映射,上一张图看到两个维度切成十二个区间,每个区间代表一个技术领域,这个可以看做我们的逻辑结构。另外,不论后台还是应用层的开发团队,一般都会分几个垂直的业务组加上一个基础技术架构组,这就是从物理组织架构到逻辑的技术架构的完美的映射,精细化团队分工,有利于提高沟通协作的效率 。 第五, www .sanhao.com 的访问过程,我们这个架构图里没有涉及到的,举个例子,比如当你在浏览器输入www.sanhao网址的时候,这个请求在接口层之前发生了什么?首先会查看你本机DNS以及DNS服务,查找域名对应的IP地址,然后发送HTTP请求过去。这个请求首先会到前端的VIP地址(公网服务IP地址),VIP之后还要经过负载均衡器(Nginx服务器),之后才到你的应用接口层。在接口层之前发生了这么多事,可能有用户报一个问题的时候,你通过在接口层查日志根本发现不了问题,原因就是问题可能发生在到达接口层之前了。 第六,我们说分布式系统,它最终的瓶颈会落在哪里呢?前端时间有一个网友跟我讨论的时候,说他们的系统遇到了一个瓶颈, 查遍了CPU,内存,网络,存储,都没有问题。我说你再查一遍,因为最终你不论用上千台服务器还是上万台服务器,最终系统出瓶颈的一定会落在某一台机(可能是叶子节点也可能是核心的节点),一定落在CPU、内存、存储和网络上,最后查出来问题出在一台服务器的网卡带宽上。微博多级双机房缓存架构 接下来我们看一下微博的Feed多级缓存。我们做业务的时候,经常很少做业务分析,技术大会上的分享又都偏向技术架构。其实大家更多的日常工作是需要花费更多时间在业务优化上。这张图是统计微博的信息流前几页的访问比例,像前三页占了97%,在做缓存设计的时候,我们最多只存最近的M条数据。 这里强调的就是做系统设计 要基于用 户 的 场 景 , 越细致越好 。举了一个例子,大家都会用电商,电商在双十一会做全国范围内的活动,他们做设计的时候也会考虑场景的,一个就是购物车,我曾经跟相关开发讨论过,购物车是在双十一之前用户的访问量非常大,就是不停地往里加商品。在真正到双十一那天他不会往购物车加东西了,但是他会频繁的浏览购物车。针对这个场景,活动之前重点设计优化购物车的写场景, 活动开始后优化购物车的读场景。 你看到的微博是由哪些部分聚合而成的呢?最右边的是Feed,就是微博所有关注的人,他们的微博所组成的。微博我们会按照时间顺序把所有关注人的顺序做一个排序。随着业务的发展,除了跟时间序相关的微博还有非时间序的微博,就是会有广告的要求,增加一些广告,还有粉丝头条,就是拿钱买的,热门微博,都会插在其中。分发控制,就是说和一些推荐相关的,我推荐一些相关的好友的微博,我推荐一些你可能没有读过的微博,我推荐一些其他类型的微博。 当然对非时序的微博和分发控制微博,实际会起多个并行的程序来读取,最后同步做统一的聚合。这里稍微分享一下, 从SNS社交领域来看,国内现在做的比较好的三个信息流: 微博 是 基于弱关系的媒体信息流 ; 朋友圈是基于 强 关系的信息流 ; 另外一个做的比 较 好的就是今日 头 条 , 它并不是基于关系来构建信息流 , 而是基于 兴趣和相关性的个性化推荐 信息流 。 信息流的聚合,体现在很多很多的产品之中,除了SNS,电商里也有信息流的聚合的影子。比如搜索一个商品后出来的列表页,它的信息流基本由几部分组成:第一,打广告的;第二个,做一些推荐,热门的商品,其次,才是关键字相关的搜索结果。 信息流 开始的时候 很 简单 , 但是到后期会 发现 , 你的 这 个流 如何做控制分发 , 非常复杂, 微博在最近一两年一直在做 这样 的工作。刚才我们是从业务上分析,那么技术上怎么解决高并发,高性能的问题?微博访问量很大的时候,底层存储是用MySQL数据库,当然也会有其他的。对于查询请求量大的时候,大家知道一定有缓存,可以复用可重用的计算结果。可以看到,发一条微博,我有很多粉丝,他们都会来看我发的内容,所以 微博是最适合使用 缓 存 的系统,微博的读写比例基本在几十比一。微博使用了 双 层缓 存,上面是L1,每个L1上都是一组(包含4-6台机器),左边的框相当于一个机房,右边又是一个机房。在这个系统中L1缓存所起的作用是什么? 首先,L1 缓 存增加整个系 统 的 QPS, 其次 以低成本灵活扩容的方式 增加 系统 的 带宽 。想象一个极端场景,只有一篇博文,但是它的访问量无限增长,其实我们不需要影响L2缓存,因为它的内容存储的量小,但它就是访问量大。这种场景下,你就需要使用L1来扩容提升QPS和带宽瓶颈。另外一个场景,就是L2级缓存发生作用,比如我有一千万个用户,去访问的是一百万个用户的微博 ,这个时候,他不只是说你的吞吐量和访问带宽,就是你要缓存的博文的内容也很多了,这个时候你要考虑缓存的容量, 第二 级缓 存更多的是从容量上来 规划,保证请求以较小的比例 穿透到 后端的 数据 库 中 ,根据你的用户模型你可以估出来,到底有百分之多少的请求不能穿透到DB, 评估这个容量之后,才能更好的评估DB需要多少库,需要承担多大的访问的压力。另外,我们看双机房的话,左边一个,右边一个。 两个机房是互 为 主 备 , 或者互 为热备 。如果两个用户在不同地域,他们访问两个不同机房的时候,假设用户从IDC1过来,因为就近原理,他会访问L1,没有的话才会跑到Master,当在IDC1没找到的时候才会跑到IDC2来找。同时有用户从IDC2访问,也会有请求从L1和Master返回或者到IDC1去查找。 IDC1 和 IDC2 ,两个机房都有全量的用户数据,同时在线提供服务,但是缓存查询又遵循最近访问原理。还有哪些多级缓存的例子呢?CDN是典型的多级缓存。CDN在国内各个地区做了很多节点,比如在杭州市部署一个节点时,在机房里肯定不止一台机器,那么对于一个地区来说,只有几台服务器到源站回源,其他节点都到这几台服务器回源即可,这么看CDN至少也有两级。Local Cache+ 分布式 缓 存,这也是常见的一种策略。有一种场景,分布式缓存并不适用, 比如 单 点 资 源 的爆发性峰值流量,这个时候使用Local Cache + 分布式缓存,Local Cache 在 应用 服 务 器 上用很小的 内存资源 挡住少量的 极端峰值流量,长尾的流量仍然访问分布式缓存,这样的Hybrid缓存架构通过复用众多的应用服务器节点,降低了系统的整体成本。 我们来看一下 Feed 的存 储 架构,微博的博文主要存在MySQL中。首先来看内容表,这个比较简单,每条内容一个索引,每天建一张表,其次看索引表,一共建了两级索引。首先想象一下用户场景,大部分用户刷微博的时候,看的是他关注所有人的微博,然后按时间来排序。仔细分析发现在这个场景下, 跟一个用户的自己的相关性很小了。所以在一级索引的时候会先根据关注的用户,取他们的前条微博ID,然后聚合排序。我们在做哈希(分库分表)的时候,同时考虑了按照UID哈希和按照时间维度。很业务和时间相关性很高的,今天的热点新闻,明天就没热度了,数据的冷热非常明显,这种场景就需要按照时间维度做分表,首先冷热数据做了分离(可以对冷热数据采用不同的存储方案来降低成本),其次, 很容止控制我数据库表的爆炸。像微博如果只按照用户维度区分,那么这个用户所有数据都在一张表里,这张表就是无限增长的,时间长了查询会越来越慢。二级索引,是我们里面一个比较特殊的场景,就是我要快速找到这个人所要发布的某一时段的微博时,通过二级索引快速定位。 分布式服务追踪系统 分布式追踪服务系统,当系统到千万级以后的时候,越来越庞杂,所解决的问题更偏向稳定性,性能和监控。刚才说用户只要有一个请求过来,你可以依赖你的服务RPC1、RPC2,你会发现RPC2又依赖RPC3、RPC4。分布式服务的时候一个痛点,就是说一个请求从用户过来之后,在后台不同的机器之间不停的调用并返回。 当你发现一个问题的时候,这些日志落在不同的机器上,你也不知道问题到底出在哪儿,各个服务之间互相隔离,互相之间没有建立关联。所以导致排查问题基本没有任何手段,就是出了问题没法儿解决。 我们要解决的问题,我们刚才说日志互相隔离,我们就要把它建立联系。建立联系我们就有一个请求ID,然后结合RPC框架, 服务治理功能。假设请求从客户端过来,其中包含一个ID 101,到服务A时仍然带有ID 101,然后调用RPC1的时候也会标识这是101 ,所以需要 一个唯一的 请求 ID 标识 递归迭代的传递到每一个 相关 节点。第二个,你做的时候,你不能说每个地方都加,对业务系统来说需要一个框架来完成这个工作, 这 个框架要 对业务 系 统 是最低侵入原 则 , 用 JAVA 的 话 就可以用 AOP,要做到零侵入的原则,就是对所有相关的中间件打点,从接口层组件(HTTP Client、HTTP Server)至到服务层组件(RPC Client、RPC Server),还有数据访问中间件的,这样业务系统只需要少量的配置信息就可以实现全链路监控 。为什么要用日志?服务化以后,每个服务可以用不同的开发语言, 考虑多种开发语言的兼容性 , 内部定 义标 准化的日志 是唯一且有效的办法。最后,如何构建基于GPS导航的路况监控?我们刚才讲分布式服务追踪。分布式服务追踪能解决的问题, 如果 单一用 户发现问题 后 , 可以通 过请 求 ID 快速找到 发 生 问题 的 节 点在什么,但是并没有解决如何发现问题。我们看现实中比较容易理解的道路监控,每辆车有GPS定位,我想看北京哪儿拥堵的时候,怎么做? 第一个 , 你肯定要知道每个 车 在什么位置,它走到哪儿了。其实可以说每个车上只要有一个标识,加上每一次流动的信息,就可以看到每个车流的位置和方向。 其次如何做 监 控和 报 警,我们怎么能了解道路的流量状况和负载,并及时报警。我们要定义这条街道多宽多高,单位时间可以通行多少辆车,这就是道路的容量。有了道路容量,再有道路的实时流量,我们就可以基于实习路况做预警? 对应于 分布式系 统 的话如何构建? 第一 , 你要 定义 每个服 务节 点它的 SLA A 是多少 ?SLA可以从系统的CPU占用率、内存占用率、磁盘占用率、QPS请求数等来定义,相当于定义系统的容量。 第二个 , 统计 线 上 动态 的流量,你要知道服务的平均QPS、最低QPS和最大QPS,有了流量和容量,就可以对系统做全面的监控和报警。 刚才讲的是理论,实际情况肯定比这个复杂。微博在春节的时候做许多活动,必须保障系统稳定,理论上你只要定义容量和流量就可以。但实际远远不行,为什么?有技术的因素,有人为的因素,因为不同的开发定义的流量和容量指标有主观性,很难全局量化标准,所以真正流量来了以后,你预先评估的系统瓶颈往往不正确。实际中我们在春节前主要采取了三个措施:第一,最简单的就是有降 级 的 预 案,流量超过系统容量后,先把哪些功能砍掉,需要有明确的优先级 。第二个, 线上全链路压测,就是把现在的流量放大到我们平常流量的五倍甚至十倍(比如下线一半的服务器,缩容而不是扩容),看看系统瓶颈最先发生在哪里。我们之前有一些例子,推测系统数据库会先出现瓶颈,但是实测发现是前端的程序先遇到瓶颈。第三,搭建在线 Docker 集群 , 所有业务共享备用的 Docker集群资源,这样可以极大的避免每个业务都预留资源,但是实际上流量没有增长造成的浪费。 总结 接下来说的是如何不停的学习和提升,这里以Java语言为例,首先, 一定要 理解 JAVA;第二步,JAVA完了以后,一定要 理 解 JVM;其次,还要 理解 操作系统;再次还是要了解一下 Design Pattern,这将告诉你怎么把过去的经验抽象沉淀供将来借鉴;还要学习 TCP/IP、 分布式系 统、数据结构和算法。

hiekay 2019-12-02 01:39:25 0 浏览量 回答数 0

问题

一个老码农的技术理想

技术小菜鸟 2019-12-01 21:17:10 3067 浏览量 回答数 1

回答

Re创业过程中细微的管理和质量 前两天和一个创业的同学聊了聊,他谈自己公司的管理时,说到了自己用了管理程序和制度对企业进行管理。我很好奇就问他:在创业初期就几个兄弟一起干,怎么有精力制定管理程序、制度和管理流程。他解释到刚开始就几个人,没有专门编制程序制度,因为都是从某德国知名企业离职的,很多规则仍在沿用原来企业规定和要求。 看来小型团队与其去建立程序制度,不如大家一起讨论制定简单的、可达成的共识来进行管理。 ------------------------- 也谈战略战术 上周去海南博鳌度假,我知道这个地方是因为这里是亚洲论坛举办地。这次去了之后,发现这里的沙滩、海浪、气候和地理条件非常好,但是这里的游客却非常少,如果和三亚比那绝对不是在一个数量级上。 从外部环境和大趋势上讲人在满足物质需要的基础上,需要通过旅游、休闲和度假来改善自己的精神生活和娱乐,国家又通过举办亚洲论坛来为这里宣传,因此当地发展这里的旅游业作为大战略是正确的。但我在这里发现这里存在的问题,交通不是很方便;博鳌亚洲论坛的会址参观居然需要买票,旁边还建了一个禅寺;很美的沙滩但清理不及时;大量的海滨建成了房屋和销售…… 如果说博鳌发展旅游业的战略很好,那么在发展旅游业的战术上却是失败的,但对于处在风口上,“猪”都能飞起来的时机上,博鳌旅游业终将会发展起来,但是要走不少弯路。 ------------------------- 一篇有关美国创业孵化器的文章 同时我在我的博客中分享了一篇转载的有关美国孵化器的文章,欢迎来我的博客阅读。   我的博客是:“http://blog.sina.com.cn/u/5599046475” ------------------------- 武汉光谷的创客园区 前几天去武汉出差,到光谷附近逛了逛。光谷是武汉的高校比较集中的地方,也是高新产业的新区,这两年发展的很好,形成了一个新的商业街区。在光谷步行街附近,看到创客街区和创客咖啡馆的宣传板和招牌,特意去看了看。 一个“创客街区”想设立在一个商住两用楼的顶楼,通过这个吸引买家买商铺和公寓。创意不错,但主推的是地产项目,创客街区只是个噱头。 另一个“创客咖啡馆”设在一个繁华路口的办公楼中,我看了看这些公司的牌子,都是金融类和商品的交易公司,由于交易公司的工作时间比较固定,下午6点中,大楼已经关门落锁。这个“创客咖啡馆”可能就是为了交易员休息或谈生意的真正的咖啡馆。 看到这里大家可以感觉到所谓的全民谈创客、谈孵化器更多的还是停留在一些口头的层面,都是口惠而实不至,当创客相关的内容对其自身的利益没有帮助或推动时,那么这些人会很快的放弃这些创客,而转向其他的更能吸引眼球的地方。 由于没有时间整理,周末我再发布有关微质量管理体系的内容。 我的博客是:“http://blog.sina.com.cn/u/5599046475”,欢迎大家关注。 ------------------------- 组织的结构形式 当一个组织了目标和准则,并且明确了组织的leader后,就可以开始为了这个目标努力了。但组织是有一些或一群人在一起,如何分工,以什么样的形式开展工作,就是组织的“形式”。 我们常听到的有关组织的说法很多,如:功能性组织、事业部组织、矩阵性组织团队、直线性组织、超级事业部等等。但其实所有组织的结构形式都是组织在大、小组织之间转换。因为当组织大到一定程度就难以控制和协作,从而需要把组织切分,就形成了如事业部组织、超级事业部组织;当组织小的时候组织的leader可以较容易的控制组织,采取了直线性组织、或矩阵性组织。 对于普通的创业者,开始采取小型团队,在这个团队里,每个人有相应的分工,负责相应的工作,作为团队的leader可以直接管理团对中的每个人,这种组织是最高效的。但随着组织规模的增大,每项工作的工作量都会大幅增加,小型团队中每个人就变成了每个部门,每个部门又形成另一个小型团队,组织越来越大,层级或者说功能块越来越多,管理的人越来越多,相应的需要管理的资源也越来越多,如财务、人事、文档、软硬件、后勤等等,组织沟通链条越来越长、每个员工和管理者对同一件工作的理解不同,造成了一项工作的走向与最高的leader的期望产生偏差和组织人员之间的矛盾,然后不断的纠偏和化解矛盾,形成更多的指令和偏差,再纠正等等。这就是创业者到大公司发展过程中组织结构形式变化导致管理越来越复杂的过程。现在对于组织结构形式的改变都是想把大公司的中的这种缺陷给化解掉,形成具有小型团队的大型公司。 任何一种组织形式都有其优点和缺点,没有一定之规。小型团队更多的适用于解决问题或者一项具体的开发任务,所以更适用于创业团队;层级的管理是在事业处于爆发期时,不得不采取的模式,这时小型团队已经无法应付相对大规模的生产工作,但在组织规模增大后就要考虑大规模组织的低效。 小型组织可以让成员之间的职责在任务之间转换,但相对大规模的组织就需要明确成员的具体职责,并保持不变,否则职责调配将称为一项巨大的工作,而且容易产生冲突。小型组织可以产生规定以外情感的联系,可以让成员之间互相支持,规模相对大的组织大家更愿意按规定行事。不过情感是个双刃剑有好的情感、就会有不好的情感,这方面创业者需要充分考虑。 我个人倾向于即使是小型组织对于组织分工也最好有个初步明确,并明确相互支持和备用的基本原则,在具体工作时,根据大家工作量的大小进行适度调配。 好的,我们现在有了好的目标和策略,有了好的团队领导,明确了组织结构的形式,已经是一个可以开始工作的团队了。下次就要谈谈我们要做哪些工作、怎么工作了。 我的博客是:“http://blog.sina.com.cn/u/5599046475”,欢迎大家关注。 ------------------------- 资源管理 传统行业规模化生产组织所指的资源一般是指人、财、物。 人指的是员工和管理人员;财指的是资金;物指的是材料、设备设施。组织的领导有一个重要的任务就是保护组织已有的资源,配置资源让资源在组织的工作中发挥最大的作用,让资源在生产和投资过程中保值增值。 随着品牌经济、知识经济、互联网经济等新形式的发展,我认为组织资源应该在原有人、财、物的基础上扩展(个人总结,希望能有补充或指正): 1.        品牌商誉; 2.        企业资质和/或相关许可; 3.        专利权或著作权; 4.        专有软件或APP软件(存在较强的技术壁垒或著作权); 5.        创意; 6.        核心技术人员; 7.        粘性较高的粉丝或客户群。 对于初创团队来说,大多数只有一个创意、一个专利或一个技术产品,如何将自己已有的资源作价,与投资方或者合作方分享,从而获得其他资源的支持,是创业者资源管理的第一步。 在具备相应的资源后,将自己的资源转化为商品或服务,并将其推向市场,在市场化的运作过程中,保证已有资源快速升值,这是第二步。 当资源足够多时,配置的资源,让资源保持本组织的优势或投入到升值最快的产品或服务中,这时资源管理的第三步,此时的创业者应该已经是一定程度上的“成功者”了。 此外: 我在博客上逛的时候看到有些创业者是从事医疗相关行业的创业的,我想说的是这个行业是国家监管很严格的行业,而且顾客对于产品的可靠性要求远高于对价格的要求,所以这个行业价格战或者说通过免费的形式获取顾客会是一条很难走的路。 我的博客是:“http://blog.sina.com.cn/u/5599046475”,欢迎大家关注。 ------------------------- 一次失败的尝试 最初在做微质量管理研究时,我的想法主要是通过自己的研究和有兴趣的创业者的反馈形成正反馈的闭环,通过交流和反馈不断修正最初的想法和思路,达到寻找真相或普世规律的目的。 但是实际操作过程中没有有实际内容的反馈,于是我尝试了另一种方式:向一些可能有创业者反馈信息的组织提出了合作的意向。希望能通过这种方式,获得更多的历史数据和信息帮助我梳理分析思路或通过数据分类佐证我的猜想。 很可惜!这个尝试也失败了。 其实我还可以找其他组织做更多的尝试,但我放弃了,因为我没有那么多精力去做这么做。 现在我准备更换研究的思路:只是自己梳理思路。 研究过程可能也更加随性一些,更加自我一些,希望大家体谅。 对我研究内容感兴趣的朋友,可以自由取用,但只是观点,不是最终的结论! 以后的信息就不在论坛发布吸引大家的注意了,更多的是在自己博客上梳理自己的思路。

menmen 2019-12-02 02:34:02 0 浏览量 回答数 0

回答

12月17日更新 请问下同时消费多个topic的情况下,在richmap里面可以获取到当前消息所属的topic吗? 各位大佬,你们实时都是怎样重跑数据的? 有木有大神知道Flink能否消费多个kafka集群的数据? 这个问题有人遇到吗? 你们实时读取广业务库到kafka是通过什么读的?kafka connector 的原理是定时去轮询,这样如果表多了,会不会影响业务库的性能?甚至把业务库搞挂? 有没有flink 1.9 连接 hive的例子啊?官网文档试了,没成功 请问各位是怎么解决实时流数据倾斜的? 请问一下,对于有状态的任务,如果任务做代码升级的时候,可否修改BoundedOutOfOrdernessTimestampExtractor的maxOutOfOrderness呢?是否会有影响数据逻辑的地方呢? 老哥们有做过统计从0点开始截止到现在时刻的累计用户数吗? 比如五分钟输出一次,就是7点输出0点到7点的累计用户,7:05输出0点到7:05的累计用户。 但是我这里有多个维度,现在用redis来做的。 想知道有没有更好的姿势? 实时数仓用什么存储介质来存储维表,维表有大有小,大的大概5千万左右。 各位大神有什么建议和经验分享吗? 请教个问题,就是flink的窗口触发必须是有数据才会触发吗?我现在有个这样的需求,就是存在窗口内没有流数据进入,但是窗口结束是要触发去外部系统获取上一个窗口的结果值作为本次窗口的结果值!现在没有流数据进入窗口结束时如何触发? kafkaSource.setStartFromTimestamp(timestamp); 发现kafkasource从指定时间开始消费,有些topic有效,有效topic无效,大佬们有遇到过吗? 各位大佬,flink两个table join的时候,为什么打印不出来数据,已经赋了关联条件了,但是也不报错 各位大佬 请教一下 一个faile的任务 会在这里面存储展示多久啊? 各位大佬,我的程序每五分钟一个窗口做了基础指标的统计,同时还想统计全天的Uv,这个是用State就能实现吗? 大佬们,flink的redis sink是不是只适用redis2.8.5版本? 有CEP 源码中文注释的发出来学习一下吗? 有没有拿flink和tensorflow集成的? 那位大神,给一个java版的flink1.7 读取kafka数据,做实时监控和统计的功能的代码案例。 请问下风控大佬,flink为风控引擎做数据支撑的时候,怎么应对风控规则的不断变化,比如说登录场景需要实时计算近十分钟内登录次数超过20次用户,这个规则可能会变成计算近五分钟内登录次数超过20次的。 想了解一下大家线上Flink作业一般开始的时候都分配多少内存?广播没办法改CEP flink支持多流(大于2流)join吗? 谁能帮忙提供一下flink的多并行度的情况下,怎么保证数据有序 例如map并行度为2 那就可能出现数据乱序的情况啊 请教下现在从哪里可以可以看单任务的运行状况和内存占用情况,flink页面上能看单个任务的内存、cpu 大佬们 flink1.9 停止任务手动保存savepoint的命令是啥? flink 一个流计算多个任务和 还是一个流一个任务好? flink 1.9 on yarn, 自定义个connector里面用了jni, failover以后 就起不来了, 报错重复load so的问题。 我想问一下 这个,怎么解决。 难道flink 里面不能用jni吗。 ide里面调试没有问题,部署到集群就会报错了,可能什么问题? 请教一下对于长时间耗内存很大的任务,大家都是开checkpoint机制,采用rocksdb做状态后端吗? 请问下大佬,flink jdbc读取mysql,tinyin字段类型自动转化为Boolean有没有好的解决方法 Flink 1.9版本的Blink查询优化器,Hive集成,Python API这几个功能好像都是预览版,请问群里有大佬生产环境中使用这些功能了吗? 想做一个监控或数据分析的功能,如果我flink 的datastreaming实现消费Kafka的数据,但是我监控的规则数据会增加或修改,但是不想停这个正在运行的flink程序,要如何传递这个动态变化的规则数据,大神给个思路,是用ConnectedStream这个吗?还是用Broadcast ?还有一个,比如我的规则数据是存放在Mysql表中,用什么事件隔30秒去触发读取mysql规则表呢?谢谢! 想做一个监控或数据分析的功能,如果我flink 的datastreaming实现消费Kafka的数据,但是我监控的规则数据会增加或修改,但是不想停这个正在运行的flink程序,要如何传递这个动态变化的规则数据,大神给个思路,是用ConnectedStream这个吗?还是用Broadcast ?还有一个,比如我的规则数据是存放在Mysql表中,用什么事件隔30秒去触发读取mysql规则表呢?谢谢! 各位大佬,在一个 Job 计算过程中,查询 MySQL 来补全额外数据,是一个好的实践嘛?还是说流处理过程中应该尽量避免查询额外的数据? Flink web UI是jquery写的吗? 12月9日更新 成功做完一次checkpoint后,会覆盖上一次的checkpoint吗? 数据量较大时,flink实时写入hbase能够异步写入吗? flink的异步io,是不是只是适合异步读取,并不适合异步写入呀? 请问一下,flink将结果sink到redis里面会不会对存储的IO造成很大的压力,如何批量的输出结果呢? 大佬们,flink 1.9.0版本里DataStream api,若从kafka里加载完数据以后,从这一个流中获取数据进行两条业务线的操作,是可以的吗? flink 中的rocksdb状态怎么样能可视化的查看有大佬知道吗? 感觉flink 并不怎么适合做hive 中的计算引擎来提升hive 表的查询速度 大佬们,task端rocksdb状态 保存路径默认是在哪里的啊?我想挂载个新磁盘 把状态存到那里去 flink 的state 在窗口滑动到下一个窗口时候 上一个窗口销毁时候 state会自己清除吗? 求助各位大佬,一个sql里面包含有几个大的hop滑动窗口,如15个小时和24个小时,滑动步长为5分钟,这样就会产生很多overlap 数据,导致状态会很快就达到几百g,然后作业内存也很快达到瓶颈就oom了,然后作业就不断重启,很不稳定,请问这个业务场景有什么有效的解决方案么? 使用jdbcsink的时候,如果连接长时间不使用 就会被关掉,有人遇到过吗?使用的是ddl的方式 如何向云邪大佬咨询FLink相关技术问题? 请问各位公司有专门开发自己的实时计算平台的吗? 请问各位公司有专门开发自己的实时计算平台的吗? 有哪位大佬有cdh集成安装flink的文档或者手册? 有哪位大佬有cdh集成安装flink的文档或者手册? 想问下老哥们都是怎么统计一段时间的UV的? 是直接用window然后count嘛? Flink是不是也是这样的? 请问现在如有个实时程序,根据一个mysql的维表来清洗,但是我这个mysql表里面就只有几条信息且可能会变。 我想同一个定时器去读mysql,然后存在对象中,流清洗的时候读取这个数据,这个想法可行吗?我目前在主类里面定义一个对象,然后往里面更新,发现下面的map方法之类的读不到我更新进去的值 有大佬做过flink—sql的血缘分析吗? 12月3日更新 请教一下,为什么我flume已经登录成功了keytab认证的kafka集群,但是就是消费不到数据呢? flink 写入mysql 很长一段时间没有写入,报错怎么解决呢? flink timestamp转换为date类型,有什么函数吗 Run a single Flink job on YARN 我采用这种模式提交任务,出现无法找到 开启 HA 的ResourceManager Failed to connect to server: xxxxx:8032: retries get failed due to exceeded maximum allowed retries number: 0 有大佬遇到过吗 ? 各位大佬,请问有Flink写S3的方案吗? flink 连接hbase 只支持1.4.3版本? onnector: type: hbase version: "1.4.3" 请问 flink1.9能跑在hadoop3集群上吗? 滑动窗口 排序 报错这个是什么原因呢? 这个pravega和kafka有啥区别? flink 开发里数据源配置了RDS,但是在RDS里没有看到创建的表,是为什么呢? Tumbling Window里的数据,是等窗口期内的数据到齐之后一次性处理,还是到了一条就处理一条啊 双流join后再做time window grouping. 但是双流join会丢失时间属性,请问大家如何解决 stream processing with apache flink,这本书的中译版 现在可以买吗? flink on yarn时,jm和tm占用的内存最小是600M,这个可以修改吗? 各位大佬,使用默认的窗口Trigger,在什么情况下会触发两次啊?窗口关闭后,然后还来了这个窗口期内的数据,并且开了allowedLateness么? flink web里可以像storm那样 看每条数据在该算子中的平均耗时吗? 各位大佬,flink任务的并发数调大到160+以后,每隔几十分钟就会出现一次TM节点连接丢失的异常,导致任务重启。并发在100时运行比较稳定,哪位大佬可以提供下排查的思路? 感觉stateful function 是下一个要发力的点,这个现在有应用案例吗? 我有2个子网(a子网,b子网)用vpn联通,vpn几周可能会断一次。a子网有一个kafka集群,b子网运行我自己的flink集群和应用,b子网的flink应用连接到a子网的kafka集群接收消息来处理入库到数仓去。我的问题是,如果vpn断开,flink consumer会异常整个作业退出吗?如果作业退出,我重连vpn后,能从auto checkpoint再把flink应用恢复到出错时flink kafka consumer应该读取的partition/offset位置吗?flink的checkpoint除了保存自己开发的算子里的state,kafkaconsumer里的partition/offset也会保存和恢复吗? flink的反压为什么不加入metrics呢 hdfs是不是和flink共用一个集群? flink消费kafka,可以从指定时间消费的吗?目前提供的接口只是根据offset消费?有人知道怎么处理? flink 的Keyby是不是只是repartition而已?没有将key相同的数据放到一个组合里面 电商大屏 大家推荐用什么来做吗? 我比较倾向用数据库,因为有些数据需要join其他表,flink充当了什么角色,对这个有点迷,比如统计当天订单量,卖了多少钱,各个省的销量,销售金额,各个品类的销售量销售金额 开源1.9的sql中怎么把watermark给用起来,有大神知道吗? 有没有人能有一些flink的教程 代码之类的分享啊 采用了checkpoint,程序停止了之后,什么都不改,直接重启,还是能接着继续运行吗?如果可以的话,savepoint的意义又是什么呢? 有人做过flink 的tpc-ds测试吗,能不能分享一下操作的流程方法 checkpoint是有时间间隔的,也就可以理解为checkpoint是以批量操作的,那如果还没进行ckecnpoint就挂了,下次从最新的一次checkpoint重启,不是重复消费了? kafka是可以批量读取数据,但是flink是一条一条处理的,应该也可以一条一条提交吧。 各位大佬,flink sql目前是不是不支持tumbling window join,有人了解吗? 你们的HDFS是装在taskmanager上还是完全分开的,请问大佬们有遇到这种情况吗? 大佬们flink检查点存hdfs的话怎么自动清理文件啊 一个128M很快磁盘就满了 有谁遇到过这个问题? 请教一下各位,这段代码里面,我想加一个trigger,实现每次有数据进window时候,就输出,而不是等到window结束再输出,应该怎么加? 麻烦问下 flink on yarn 执行 客户端启动时 报上面错,是什么原因造成的 求大佬指点 ERROR org.apache.flink.client.program.rest.RestClusterClient - Error while shutting down cluster java.util.concurrent.ExecutionException: org.apache.flink.runtime.concurrent.FutureUtils$RetryException: Could not complete the operation. Number of retries has been exhausted. 大家怎么能动态的改变 flink WindowFunction 窗口数据时间 flink on yarn之后。yarn的日志目录被写满,大家如配置的? Flink1.9 启动 yarn-session报这个错误 怎么破? yarn 模式下,checkpoint 是存在 JobManager的,提交任务也是提交给 JobManager 的吧? heckpoint机制,会不会把window里面的数据全部放checkpoint里面? Flink On Yarn的模式下,如果通过REST API 停止Job,并触发savepiont呢 jenkins自动化部署flink的job,一般用什么方案?shell脚本还是api的方式? 各位大佬,开启增量checkpoint 情况下,这个state size 是总的checkpoint 大小,还是增量上传的大小? 想用状态表作为子表 外面嵌套窗口 如何实现呢 因为状态表group by之后 ctime会失去时间属性,有哪位大佬知道的? 你们有试过在同样的3台机器上部署两套kafka吗? 大家有没有比较好的sql解析 组件(支持嵌套sql)? richmapfuntion的open/close方法,和处理数据的map方法,是在同一个线程,还是不同线程调用的? flink on yarn 提交 参数 -p 20 -yn 5 -ys 3 ,我不是只启动了5个container么? Flink的乱序问题怎么解决? 我对数据流先进行了keyBy,print的时候是有数据的,一旦进行了timeWindow滑动窗口就没有数据了,请问是什么情况呢? 搭建flinksql平台的时候,怎么处理udf的呀? 怎么查看sentry元数据里哪些角色有哪些权限? 用java api写的kafka consumer能消费到的消息,但是Flink消费不到,这是为啥? 我state大小如果为2G左右 每次checkpoint会不会有压力? link-table中的udaf能用deltaTrigger么? flink1.7.2,场景是一分钟为窗口计算每分钟传感器的最高温度,同时计算当前分钟与上一分钟最高温 001 Flink集群支持kerberos认证吗?也就是说flink客户端需要向Flink集群进行kerberos认证,认证通过之后客户端才能提交作业到Flink集群运行002 Flink支持多租户吗? 如果要对客户端提交作业到flink进行访问控制,你们有类似的这种使用场景吗? flink可以同时读取多个topic的数据吗? Flink能够做实时ETL(oracle端到oracle端或者多端)么? Flink是否适合普通的关系型数据库呢? Flink是否适合普通的关系型数据库呢? 流窗口关联mysql中的维度表大佬们都是怎么做的啊? 怎么保证整个链路的exactly one episode精准一次,从source 到flink到sink? 在SQL的TUMBLE窗口的统计中,如果没数据进来的,如何让他也定期执行,比如进行count计算,让他输出0? new FlinkKafkaConsumer010[String]("PREWARNING",new JSONKeyValueDeserializationSchema(true), kafkaProps).setStartFromGroupOffsets() ) 我这样new 它说要我传个KeyedDeserializationSchema接口进去 flink里面broadcast state想定时reload怎么做?我用kafka里的stream flink独立模式高可用搭建必需要hadoop吗? 有人用增量cleanupIncrementally的方式来清理状态的嘛,感觉性能很差。 flink sink to hbase继承 RichOutputFormat运行就报错 kafka 只有低级 api 才拿得到 offset 吗? 有个问题咨询下大家,我的flinksql中有一些参数是要从mysql中获取的,比如我flink的sql是select * from aa where cc=?,这个问号的参数需要从mysql中获取,我用普通的jdbc进行连接可以获的,但是有一个问题,就是我mysql的数据改了之后必须重启flink程序才能解决这个问题,但这肯定不符合要求,请问大家有什么好的办法吗? flink里怎样实现多表关联制作宽表 flink写es,因为半夜es集群做路由,导致写入容易失败,会引起source的反压,然后导致checkpoint超时任务卡死,请问有没有办法在下游es处理慢的时候暂停上游的导入来缓解反压? flink 写parquet 文件,使用StreamingFileSink streamingFileSink = StreamingFileSink.forBulkFormat( new Path(path), ParquetAvroWriters.forReflectRecord(BuyerviewcarListLog.class)). withBucketAssigner(bucketAssigner).build(); 报错 java.lang.UnsupportedOperationException: Recoverable writers on Hadoop are only supported for HDFS and for Hadoop version 2.7 or newer 1.7.2 NoWindowInnerJoin这个实现,我看实现了CleanupState可更新过期时间删除当前key状态的接口,是不是这个1.7.2版本即使有个流的key一直没有被匹配到他的状态也会被清理掉,就不会存在内存泄漏的问题了? flink1.7.2 想在Table的UDAF中使用State,但是发现UDAF的open函数的FunctionContext中对于RuntimeContext是一个private,无法使用,大佬,如何在Table的UDAF中使用State啊? Flink有什么性能测试工具吗? 项目里用到了了KafkaTableSourceSinkFactory和JDBCTableSourceSinkFactory。maven打包后,META-INF里只会保留第一个 标签的org.apache.flink.table.factories.TableFactory内容。然后执行时就会有找不到合适factory的报错,请问有什么解决办法吗? 为什么这个这段逻辑 debug的时候 是直接跳过的 各位大佬,以天为单位的窗口有没有遇到过在八点钟的时候会生成一条昨天的记录? 想问一下,我要做一个规则引擎,需要动态改变规则,如何在flink里面执行? flink-1.9.1/bin/yarn-session.sh: line 32: construc 我要用sql做一个规则引擎,需要动态改变规则,如何在flink里面执行? 我要用sql做一个规则引擎,需要动态改变规则,如何在flink里面执行? 一般公司的flink job有没有进程进行守护?有专门的工具或者是自己写脚本?这种情况针对flink kafka能不能通过java获取topic的消息所占空间大小? Flink container was removed这个咋解决的。我有时候没有数据的时候也出现这 大家有没有这种场景,数据从binlog消费,这个信息是订单信息,同一个订单id,会有不同状态的变更 问大家个Hive问题,新建的hive外部分区表, 怎么把HDFS数据一次性全部导入hive里 ? flink里面的broadcast state值,会出现broad流的数据还没put进mapstat Flink SQL DDL 创建表时,如何定义字段的类型为proctime? 请问下窗口计算能对历史数据进行处理吗?比如kafka里的写数据没停,窗口计算的应用停掉一段时间再开起 请问下,想统计未退费的订单数量,如果一个订单退费了(发过来一个update流),flink能做到对结果进行-1吗,这样的需求sql支持吗? 使用Flink sql时,对table使用了group by操作。然后将结果转换为流时是不是只能使用的toRetractStream方法不能使用toAppendStream方法。 百亿数据实时去重,有哪位同学实践过吗? 你们的去重容许有误差?因为bloom filter其实只能给出【肯定不存在】和【可能存在】两种结果。对于可能存在这种结果,你们会认为是同一条记录? 我就运行了一个自带的示例,一运行就报错然后web页面就崩了 flink定时加载外部数据有人做过吗? NoSuchMethodError: org.apache.flink.api.java.Utils.resolveFactory(Ljava/lang/ThreadLocal;Ljava/lang/Object;)Ljava/util/Optional 各位知道这个是那个包吗? flink 可以把大量数据写入mysql吗?比如10g flink sql 解析复杂的json可以吗? 在页面上写规则,用flink执行,怎么传递给flink? 使用cep时,如何动态添加规则? 如何基于flink 实现两个很大的数据集的交集 并集 差集? flink的应用场景是?除了实时 各位好,请教一下,滑动窗口,每次滑动都全量输出结果,外部存储系统压力大,是否有办法,只输出变化的key? RichSinkFunction close只有任务结束时候才会去调用,但是数据库连接一直拿着,最后成了数据库连接超时了,大佬们有什么好的建议去处理吗?? 为啥我的自定义函数注册,然后sql中使用不了? 请问一下各位老师,flink flapmap 中的collector.collect经常出现Buffer pool is destroyed可能是什么原因呢? 用asyncIO比直接在map里实现读hbase还慢,在和hbase交互这块儿,每个算子都加了时间统计 请教一下,在yarn上运行,会找不到 org.apache.flink.streaming.util 请问下大佬,flink1.7.2对于sql的支持是不是不怎么好啊 ,跑的数据一大就会报错。 各位大佬,都用什么来监控flink集群? flink 有那种把多条消息聚合成一条的操作吗,比如说每五十条聚合成一条 如何可以让checkpoint 跳过对齐呢? 请问 阿里云实时计算(Blink)支持这4个源数据表吗?DataHub Kafka MQ MaxCompute? 为啥checkpoint时间会越来越长,请问哪位大佬知道是因为啥呢? 请问Flink的最大并行度跟kafka partition数量有关系吗? source的并行度应该最好是跟partition数量一致吧,那剩下的算子并行度呢? Flink有 MLIB库吗,为什么1.9中没有了啊? 请教一下,有没有flink ui的文章呢?在这块内存配置,我给 TM 配置的内存只有 4096 M,但是这里为什么对不上呢?请问哪里可以看 TM 内存使用了多少呢? 请教个问题,fink RichSinkFunction的invoke方法是什么时候被调用的? 请教一下,flink的window的触发条件 watermark 小于 window 的 end_time。这个 watermark 为什么是针对所有数据的呢?没有设计为一个 key 一个 watermark 呢? 就比如说有 key1、key2、key3,有3个 watermark,有 3个 window interval不支持left join那怎么可以实现把窗口内左表的数据也写到下游呢? 各位 1、sink如何只得到最终的结果而不是也输出过程结果 ;2、不同的运算如何不借助外部系统的存储作为另外一个运算的source 请教各位一个问题,flink中设置什么配置可以取消Generic这个泛型,如图报错: 有大佬在吗,线上遇到个问题,但是明明内存还有200多G,然后呢任务cancel不了,台也取消不了程序 flink遇到The assigned slot container_1540803405745_0094_01_000008_1 was removed. 有木有大佬遇到过。在flink on yarn上跑 这个报错是什么意思呢?我使用滑动窗口的时候出现报错 flink 双流union状态过期不清理有遇到的吗? 大家有没有这种场景,数据从binlog消费,这个信息是订单信息,同一个订单id,会有不同状态的变更,如果订单表与商品明细join查询,就会出现n条重复数据,这样数据就不准了,flink 这块有没有比较好的实战经验的。 大佬们、有没有人遇到过使用一分钟的TumblingEventTimeWindows,但是没有按时触发窗口、而是一直等到下一条消息进来之后才会把这个窗口的数据发送出去的? flink 有办法 读取 pytorch的 模型文件吗? 大佬们、有没有人遇到过使用一分钟的TumblingEventTimeWindows,但是没有按时触发窗口、而是一直等到下一条消息进来之后才会把这个窗口的数据发送出去的? flink timestamp转换为date类型,有什么函数吗 flink 写入mysql 很长一段时间没有写入,报错怎么解决呢? flink 有办法 读取 pytorch的 模型文件吗? 有没有大佬知道实时报表怎么做?就是统计的结果要实时更新,热数据。 刚接触flink 1.9 求问flink run脚本中怎么没有相关提交到yarn的命令了 请教一下,flink里怎么实现batch sink的操作而不导致数据丢失

问问小秘 2019-12-02 03:19:17 0 浏览量 回答数 0

问题

MaxCompute百问集锦(持续更新20171011)

隐林 2019-12-01 20:19:23 38430 浏览量 回答数 18

回答

关于域的重命名也是很多网络管理人员近几年遇到的比较多的一个现象,往往是由于公司内部或外部的一些原因而导致公司的名称发生变化,那么公司的域名也要发生相应的变化,但是由于域构架的特殊性,所以对域进行重命名可不像对修改计算机的主机名这么简单,那么接下来我将为大家详细说一下域的重命名的操作流程。 * Z; B! p1 U. l2 q   先给大家罗列一下实验环境: 1 E9 E* o3 b& ]' e9 x, n+ S2 Q  原域域名:demo.com 6 u+ b0 S9 X, Q8 r3 k9 n  域控制器:server.demo.com# \8 e- O- Z. S$ F( j$ j) ~) H   IP:192.168.5.1 # U: N( d" [% A5 N0 F2 A0 }- e" x  子网掩码:255.255.255.0 $ E' k7 ?3 A* l; r" o. q3 _  DNS:192.168.5.17 w- e$ c1 Z9 x+ X2 Q) E% P1 X   其中还有一台域外额控制器,名为:test20031.demo.com,一个子域:test.demo.com * a8 M$ }/ ~! , L  实验目的:把demo.com重命名为try.com 9 J4 n0 } ?8 4 W* B  一、前提条件:& d2 C- e3 |, M   1、 所有的域控制器必须全部是Windows Server 2003,这是一个必备条件,因为Windows 2000域并不支持域重命名。如果你是Windows 2000域的话,那么你只能用ADMT进行活动目录迁移,具体操作请参见我的上一篇文章。 ! u) p, W6 {7 D% ?  2、 由于域的重命名操作并不是在域控制器上完成的,(这一点出乎很多人的意料之外吧),所以除了域控制器外,还要有一台装着Windows Server 2003的成员服务器,而且必须已经加入到该域。本实验环境中这台计算机的配置如下:) }; c. n8 d$ n& Z' Z( ]) S* E7 K   计算机名:ren2003.demo.com 2 K$ G+ E9 O- E! @4 c6 _. |3 W1 O  IP:192.168.5.6, V/ r, G$ ^7 v' s: I   子网掩码:255.255.255.0 - K' O7 O% T' l2 R- n4 Q  DNS:192.168.5.13 z V7 f: p5 t! o0 k   二、准备工作:, N5 t$ K. K: W   1、 在进行域的重命名操作以前,请一定要用Ntbackup工具备份现在所有域控制器的系统状态数据数据,以防万一。我在前面的文章——“活动目录之备份与恢复”上已经详细讲过了,这里就不重复了。 : C K, c+ L7 U0 B3 W; P0 S6 s& c) C- A 7 u; a) @0 x. z0 y, V   2、 要进行域的重命名操作,所有的域控制器一定要是Windows Server 2003,并且提升域和森林的功能级别到Windows 2003纯模式,因为默认是Windows 2000混合模式;关于提升域功能级别我已要在“活动目录之迁移”是提到了,这里我只是提一下提升森林的功能级别:, ^+ q5 F- C- _2 Y: A* Z   点击“开始-设置-控制面板-管理工具-Active Directory域和信任关系”: $ C$ k g/ m$ o; {& M 3 z% [5 L" d4 G1 u) _+ j   在“Active Directory域和信任关系”上击右键:8 J% U& \+ N r+ I7 l, H$ L 8 l" K) t2 @+ n& G Q$ ~  选择“提升林功能级别”:$ H; F- }$ }2 T7 a# P % C! W! n8 U6 u s   点击“提升”就可以了,只是这个操作也是不可逆的。之前一定要保证域级别在Windows Server 2003,包括子域的域级别哟!) E$ ?8 g6 ]: Q) d% d$ E+ F   提升完成后,大家要注意复制的时间,最好等一会,至于具体要等多久就要取决于你的网络规模大小了。: R8 V: ?7 T9 j3 M0 N3 L   3、新建一个新的DNS区域,域名要和新建域的域名一致;( ?9 y. E5 g/ @2 ?   点击“开始-设置-控制面板-管理工具-DNS”:" m3 d; x% _3 F7 _" \7 e+ ~1 I * o: a: R2 ]8 U7 G$ i% m  在“正向查找区域”上击右键: ' |/ E5 Q+0 }* c) E2 q) H) X% X & V* V6 d6 a: O$ c! [  选择“新建区域”: - ~7 M: a% v6 O# R9 T4 M* } * g+ R5 s4 v* U( s  点“下一步”: 8 Z& m8 k3 L u/ Y: B  选“主要区域”,其它保持默认,点“下一步”: ( P, K4 z' c8 Z* o8 g* r 6 m! b# k/ x: i7 t, t. x8 h   选“至Active Directory林demo.com中的所有域控制器”,然后点“下一步”:3 y" O, Y" [; [2 i, {2 u p; P/ P$ u<br>& p& F; w1 U8 Y( j( M2 T9 ]4 g0 j<br>  这里要输入新域的域名,实验中是“try.com”,继续“下一步”:6 ]& ?# v- Z% F: T) S9 |. @# m<br><br>$ R2 j4 y4 3 d0 i* H# ]  点“下一步”:7 d% G6 i6 ]0 C5 f<br><br>' S/ T: J9 t* G H* \  确认没有问题后点“完成”:<br>) f& |' w" \: j7 ~$ q# F0 T <br>' O v4 d/ B& K' u& \  建立完成。<br>, z5 X8 S# U( S- ?6 x<br>0 Q& I+ r,' a0 b+ ! s 三、重命名操作; <br>9 }' p; }+ X; Z/ ?4 Q  1、在成员服务器上获得重命名工具。4 Q4 F" g3 w" j   在默认情况下,重命名工具并不会被安装,所以我们要到安装光盘中去获得这个工具,在x:\valueadd\msft\mgmt\domren,(X表示安装盘所在的光驱盘符): ) c$ f( F4 K& I' T/ _ $ G. n; X. b6 B1 Y2 h& |, _   两个工具的名称分别是rendom.exe和gpfixup.exe,其中rendom是我们用以的主要工具,gpfixup是用来修复组策略的。还有一篇readme文档,英文不错的朋友可以看一下。把这两个工具拷到硬盘上,实验中,我拷到了C盘。 . j; _$ e: ~4 v8 O4 z  2、点击“开始-运行”,输入:cmd,回车,在出来的命令提示符下把当前目录切换到C盘根目录下:/ J2 n/ u; u6 C/ ? ( f8 T. w# T4 H+ A8 ^: s8 ^   输入:rendom /list,回车: * t7 B" p' T9 z% V; L/ | 3 k8 q7 p4 y. R) k   运行成功后在该工具的文件夹下会产生一个名为domainlist.xml文件,实验中就是C盘根目录下;5 t5 H, S; l% t) w5 t2 J$ y7 L, ^1 w 6 A) f0 c. [8 r/ t) G# h   我们打开一下这个文件看一下,里面是些什么内容: 2 h# \: V9 ~0 \5 A) n. K8 X8 U/ t; \ 8 {1 @& U( C) x6 f$ Y  3、 用记事本修改domainlist.xml文件,把里面的demo.com,全部换成try.com<br>" _9 M4 G K4 Y$ M2 R. _ }- F: ~# E! W- l5   修改完成后保存退出:0 {/ [' Q- y/ b ; K6 A( A$ ?/ {4 w  4、 再点击“开始-运行”,输入“cmd”回车,并切换到C盘根目录下,然后再输入:rendom /upload,然后回车:; k7 c) t) e8 N3 y<br>- _/ l, t0 p& E% R. o. @8 V/ l Q<br>  执行成功后,会产生一个dclist.xml文件,该文件相当于一个日志文件,会纪录重命名过程中的状态,这是这个文件的内容:<br>! p1 C+ v$ A; {/ X) ~. y 4 }4 k& E$ @# Q3 f   并且此时森林被冻结,也就是说这个时候,域已经不可用了;7 P- _* I; G+ K6 P& v2 a   5、继续在命名提示符下运行rendom /prepare,此步骤主要是校验DC是否全部准备完成;: I7 G, f4 W9 ~8 _ & ( p: D( S9 A% ]4 k3 L  以上图表示准备完成。 - e# b( e- d5 b$ Z5 r- ' |  6、如果上述步骤中出现失误,比如发现新域名书写错误等,可以运行rendom /end,可以取消前面第2步开始的操作,并同时解除森林的冻结状态;) h& L& v& N( m7 V8 i   7、如果没有问题的话,那么此时在命令提示符下执行:rendom /execute。+ [7 F; ]) Q7 A/ V, H- z9 } - _1 a8 X* P9 g+ G  执行成功后,会发现所有的域控制器全部自动重启。重启后,登陆界面会发生变化:3 [" S- o( v0 D( @5 t4 w; V& x. N ; e4 }8 u* g/ G; B, B   看到了吧?原来的“demo”不见了,换成了“try”。 * o9 K9 I3 r6 A& h6 b ~  8、重新命名域控制器的DNS后缀。 / s' W3 N% s! @,! a, q# Y1 Q  进入系统后,你会发现,虽然域名已经换了,但域控制器的DNS名却并没有发生改变,如下图: ' x* G& X( @6 g2 W / c" e4 _% A6 a0 {/ V4 M8 R; @  所以我们要点击上面的“更改”按钮:8 j3 {& u* q8 R0 D! P! N* d* S. y & e3 P4 d6 l r5 c: M1 f; K   点“确定”: 2 L! g; [0 b( b. U6 m / s) S* l+ {5 Y  点“其它”:<br>) ]( p$ S {& O4 O { <br>0 b7 ?) t2 P$ b/ F  把上面的“demo.com”换成“try.com”,然后再点“确定”,系统会要求重启,重启后的域控制器的DNS名字就会换掉了:<br>$ {$ s0 a, Z% d$ C: r7 y5 t e; L <br>- Q& i9 D0 }0 $ J  相同的操作在所有的域控制器上做一次,包括子域上的域控制器。7 l' B& {: S- U* R$ d& ~* A' b- |4 ]   9、客户端的操作。 , l' t5 K& R2 V) Z- u( i2 K  客户端上不用做其它的额外操作,只要把客户端重启。重启会可以看到如下界面: * |- L( 3 n$ |, R 0 S6 [! V/ l& O8 C!8 ]/ s  奇怪,怎么还是“demo”?为什么不是“try”?别急,再重启一下:5 l$ u/ y1 e" P) V0 r0 d4 e : D' j , q a+ W. m& X  “try”出来了吧? : T* P4 ?& A2 j9 I  10、清除AD中的老域名。 $ z7 n( X3 l$ h* J  转到成员服务器,点击“开始-运行”,输入cmd,回车,并切换到C盘根目录下,然后再输入:rendom /clean,回车: ! ?" r" {' c* b- }3 I $ K4 t! a9 o6 b/ L3 B8 a/ E/ [0 [' t  出现上图表示清除成功! + M" C/ M2 E# L o4 {2 v  11、组策略的修复。<br>( r/ b+ ~/ e! t% c  截止到第10步,其实整个域的重命名操作算是完成了,但是我们还有一个后续工作要做,就是修复组策略,大家可以此时去运行一下组策略,我想大部份的网络管理员都会得到如下画面:<br>! ?8 g1 z4 k; x8 <br>$ T' |- " U- d7 u4 S; ~  发现组策略根本不可用,OK,那我们来修复它,还记得文章刚刚开始的时候,我提到的两个工具吗?其中一个是用到现在的rendom,另一个就是用来修复组策略的gpfixup。现在转到成员服务器上,点击“开始-运行”,输入cmd,回车,并切换到C盘根目录下,然后再输入:gpfixup /olddns:demo.com /newdns:try.com /oldnb:demo /newnb:try /dc:try.com,回车:9 L1 D, x: m/ i; q$ X<br># u+ }7 Z7 K. H5 t   运行成功后,再到域控上去执行一下组策略:2 e* M% h4 b. P4 ? & : Q3 J5 s" j. o2 v* o$ P  看到了吧,组策略已经可以成功执行了。 $ Z, M% o" ?; q4 ^& u ' H* K# j. w* ^, v+ Z" h   到此为止,整个操作全部完成了。 2 - v' i7 }# C% H1 H  四、注意事项。3 I2 W8 G$ n/ {   1、如果森林中有Exchange 2000或2003请不要进行域的重命名,因为一旦进行重命名操作,Exchang将会停止工作。这一点请大家一定要注意!0 z3 $ S ^, @* f9 P( l4 L% |   2、森林在短时间内停止工作,具体时间取决于域控制器的多少和你的网络规模。 0 {6 \7 c7 U# U8 T  3、域的重命名操作要么所有的域控制器完成重命名,要么就从森林里彻底的消失。. {! d6 l d) j   4、在域的重命名操作中,不能添加或删除域控制器,也不能进行新的域信任关系的建立。. R) Z O; _; D 答案来源于网络

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

问题

支付宝的性能测试

云效平台 2019-12-01 21:47:13 5472 浏览量 回答数 1

问题

SaaS模式云数据仓库MaxCompute 百问百答合集(持续更新20200921)

亢海鹏 2020-05-29 15:10:00 15821 浏览量 回答数 4

回答

FAQ: LNAMP是不是比LNMP更费内存? LNAMP中处理PHP程序的是Apache,LNMP处理PHP程序的是PHP-FPM,这二者占用的内存是差不多的。 LNAMP为什么会比LNMP更稳定? 原因同上,Apache是全世界流行了十几年的服务器程序,稳定性自然不在话下,而PHP-FPM是以PHP解释器引擎本身添加进了“服务器”的功能特性实现的,尤其在大负载情况下差异更为突出。 LNAMP为什么会比LAMP更高效? LNAMP中处理静态请求的是NGINX,LAMP中处理静态请求的是APACHE。 NGINX主要是以多线程的方式工作的,也就是它只需要一个进程,就可以处理大量的并发请求。而APACHE是以进程的方式工作,每处理一个请求,就需要占用一个进程。进程和线路的区别应该不需要多解释了。 APACHE也可以使用线程的方式,但是这样的话,它处理PHP解析也会同样使用多线程,流量稍高点的环境中会严重影响稳定性。 为什么不带面板? 原因1:本人不擅长写WEB程序。 原因2:任何带有面板的环境套件,对环境本身的修改都有很大的限制,比如流量达到几万IP的时候,你再想优化下环境,一旦有些配置你修改了,就可能会导致面板出问题。 ------------------------- Re:Re 引用第8楼imhua于2014-02-15 23:27发表的 Re : 以后可以考虑升级脚本,比如升级php,nginx等 在计划中 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第10楼xinde于2014-02-16 10:23发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 安装过程有错误 make[2]: *** No rule to make target `/usr/lib/libcurses.so', needed by `client/mysql'.  Stop. make[1]: *** [client/CMakeFiles/mysql.dir/all] Error 2 make: *** [all] Error 2 ....... 发行版,版本号,位数,这些能否提供下? 方便的话最好能PM下IP和密码。 错误是因为缺少 libcurses这个库,不同的系统里名字可能会不一样。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第13楼zikercn于2014-02-16 14:23发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : ln: creating symbolic link `/usr/bin/resolve_stack_dump': File exists /usr/local/mysql/bin/mysqladmin: connect to server at 'localhost' failed error: 'Access denied for user 'root'@'localhost' (using password: NO)' Error Occured! ....... 之前安装过一次了吧?再安装的话应该先重装系统。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第15楼金融之王于2014-02-16 21:00发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 :   现在安装PHP选择5.5,那以后PHP官方出5.6、5.7版本,怎么升级? yum -r install php或 yum update php 应该都行不通吧? ....... 第一,未来会加上升级的选项 第二,不要为了升级而升级,除非网站程序对新版功能有明确要求,或者为了修复漏洞。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第21楼haibin00于2014-02-18 23:45发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 整个服务怎么重启?我安装好后,从新启动了一下服务器,整个lanmap就不能用了,怎么把这些服务都启动尼? 一些常规的指令最好发出来,新手不太懂 具体的系统版本是什么? ------------------------- Re:回22楼服务器之家的帖子 引用第23楼haibin00于2014-02-19 01:04发表的 回22楼服务器之家的帖子 : Debian 6.0.6 64位 安装完,还把php升到5.4了,但我在控制台重启了服务器就不能用了 方便的话IP和密码PM给我看下 ------------------------- 回 25楼(haibin00) 的帖子 密码是错的,你加我QQ吧。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第28楼天之城于2014-02-20 13:41发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 怎么安装支持curl 已经支持了,不需要再安装。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第30楼天之城于2014-02-23 00:17发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 安装好后,有没有单独升级php版本的 暂时没有,以后会考虑增加这个功能。 ------------------------- 引用第32楼1351edu.com于2014-02-23 10:20发表的  : [attachment=49180] 我的装了后,发生502错误。 请联系签名的QQ ------------------------- 回 35楼(天之城) 的帖子 passwd www ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第37楼salesparty于2014-02-24 17:01发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : phpMyAdmin Version information: 3.3.10.5, old enough. 3.4版本之后开始大量使用AJAX,随之而来的是一堆BUG,以至自己带了一套BUG提交机制。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第39楼yipoo于2014-02-25 15:25发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 看起来很好,晚上安装测试下效果 欢迎反馈意见建议~ ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第42楼javin于2014-03-01 11:04发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 数据库的安装信息在哪里? 安装完会在屏幕显示,同时会保存在/root/setup.txt 。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第46楼thorbj于2014-03-02 14:21发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 我的服务器突然遇到能ping通但是网站打不开的问题,请问能不能帮忙分析一下可能是什么原因。LAMP重新安装不行,服务器重装都不行 签名里有QQ ------------------------- Re:回47楼服务器之家的帖子 引用第49楼thorbj于2014-03-02 19:36发表的 回47楼服务器之家的帖子 : 这种服务是怎么收费的,必要时候还真感觉需要你们的帮助 依难度和需要的时间而定。需要的时候可以联系我QQ。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第51楼自言自语于2014-03-03 17:00发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : MySQL是什么版本? 5.5系列最新版 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第53楼自言自语于2014-03-03 18:56发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 我看到安装完以后的FTP根目录是: /home/www/ 请问应该把数据盘挂载到哪个目录下? /home/www/ ------------------------- 回 57楼(马丁) 的帖子 是什么系统? ------------------------- 回 59楼(vagh) 的帖子 service mysqld stop chkconfig mysqld off 上面两个命令让它不启动就行了 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第67楼天之城于2014-03-08 09:48发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 低配云服务器CentOS 6.3 64位,1核512M内存,在编译php 的时候出现内存不足 virtual memory exhausted: Cannot allocate memorymake: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1 改了下,500M以下内存不编译fileinfo模块了。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第70楼幸福黄金于2014-03-14 10:07发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : mysql、apache、nginx、php 能不能自定义安装路径 这个没什么必要,编译安装的软件放到/usr/local/是比较规范的做法。 如果一定要修改,先把脚本下载回来,修改编译参数中的PREFIX即可。 ------------------------- Re:回71楼服务器之家的帖子 引用第72楼amoslee于2014-03-14 19:52发表的 回71楼服务器之家的帖子 : 楼主,同样出现67楼的问题,解决一下 能否PM下IP和密码我检查下? ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第74楼hun于2014-03-14 23:04发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 官方低配能用此环境不,装完占多少内存? 1,能用 2,在合理的范围内,开的APACHE进程越多,配的MYSQL缓存越大,用的内存越多,支撑的访问量越大。一般这么问的人都以为占的内存越少越好,这个以后有时间会开个帖子写一下。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第76楼amoslee于2014-03-15 12:42发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : Error Occured! Current Work Dir: /tmp/dir/php-5.5.10 Command: ....... 能否PM下IP和密码? ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第78楼酷酷机器猫于2014-03-16 18:40发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 楼主 你好。 我装好了,但是有个问题,我文件是二进制上传的,但是安装网站时显示不是二进制上传的。 在用其他一键安装包时没这个问题。 最简单的办法,打包上传然后解压缩。 我现在试过好几种上传方式都不行,是不是哪里设置有问题,帮忙回答下 非常感谢 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第80楼酷酷机器猫于2014-03-16 22:43发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 谢谢 LZ 上个问题解决了。 请问下有没有查看mysql ftp 帐号密码的命令?   类似: cat account.log cat /root/setup.txt ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第83楼灰色状态于2014-03-17 18:01发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 你这个和军哥的LNMP比起来,如何? 都在一楼写过了 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第85楼灰色状态于2014-03-17 20:30发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 请问适合最低配置,1核,512M内存的使用不??? 可以 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第88楼不要作死于2014-03-18 01:24发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : echo '/dev/xvdb1  /home/www ext3    defaults    0  0' >> /etc/fstab 挂载数据盘到/home/www的命令是不是这样? ....... 文件内容不正确 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第91楼智子于2014-03-28 15:51发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : php可以选择,apache和mysql还有nginx这三个软件默认是什么版本 apache 2.2.x最新稳定版 mysql 5.5.x最新稳定版 nginx最新稳定版 安装程序会抓取官方数据分析版本和下载地址 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第99楼aa65535于2014-04-02 13:27发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : Debian系统下无法使用 具体是什么错误? ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第99楼aa65535于2014-04-02 13:27发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : Debian系统下无法使用 这种需求相对来说很小众,如果不需要MYSQL可以设置下不运行这个服务即可。 service mysqld stop chkconfig mysqld off ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第96楼阿莱于2014-04-01 14:15发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 这个安装的时候没有提示,不能让用户选择哪些装哪些不装。 ....... 安装的服务都在/usr/local/目录下,启动脚本在/etc/init.d/目录下。 建议关闭服务即可,没有必要删除文件,占用的硬盘不是很多。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第95楼坤叔于2014-03-31 20:33发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 环境组件官方源太慢了,强烈要求换成国内可靠站点镜像,或者server110自己的服务器! 安装程序会自动分析官方网站上的最新版本的下载地址,如果使用其他下载的地址不方便安装到最新版本。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第97楼lisso.me于2014-04-01 16:44发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : PHP 似乎没有启用PDO支持,请问如何启用? 感谢反馈,安装脚本里已经添加了相应的编译参数。 [attachment=51113] 如果不想重装的话,可以参考下这个链接 http://www.server110.com/php/201404/8711.html 注意下路径有可能不同。 ------------------------- Re:回101楼服务器之家的帖子 引用第107楼aa65535于2014-04-02 16:56发表的 回101楼服务器之家的帖子 : 一直循环出现这个错误: [code]gzip: /tmp/dir/mysql-5.5.37.tar.gz: No such file or directory tar: This does not look like a tar archive tar: Exiting with failure status due to previous errors ....... 你系统里设置的源没有axel,能否PM IP和密码我查看下。 如果只想解决问题的话,自己先安装上axel即可。 晚些时间我会修改下脚本在debian和ubuntu都用编译方式安装axel。 ------------------------- Re:ReRe回101楼服务器之家的帖子 引用第109楼aa65535于2014-04-02 17:35发表的 ReRe回101楼服务器之家的帖子 : 已经PM 发现了点问题,如果方便的话,能否重新装一下这个系统再提供下密码,感谢。 ------------------------- Re:ReReReRe回101楼服务器之家的帖子 引用第111楼aa65535于2014-04-02 19:35发表的 ReReReRe回101楼服务器之家的帖子 : 已经PM了 依赖关系的路径还有点问题,建议你先用CENTOS安装下。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第113楼蓝昼于2014-04-03 15:00发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 亲啊,不能搞个国内分流吗?这速度下到猴年马月啊,从中午11点半装到现在了~下午三点了。。。 这效率太差了,早丧失一键安装的意义了! ....... 恩,我也体会到了,这几天就会调整为在server110.com的服务器上下载。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第115楼haha231于2014-04-03 17:06发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : Current Work Dir: /tmp/dir/php-5.4.26 Command: make -j 1 && make install Error: ....... 能否PM下IP和密码? ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第115楼haha231于2014-04-03 17:06发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : Current Work Dir: /tmp/dir/php-5.4.26 Command: make -j 1 && make install Error: ....... 能否PM下IP和密码? ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第116楼漫步西溪于2014-04-03 17:43发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 安装楼主方法一键安装了环境,应该PHP5.2,如果要换成其他版本的PHP,怎么操作? 我是纯粹业余,不懂技术,还望楼主详细指导下 目前安装程序还不能更换PHP版本,最简单的方法就是重新安装一次。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第120楼blucejum于2014-04-03 21:45发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 显示说需要安装好几天才能装好。。。 这几天会修改为从www.server110.com的服务器上下载安装程序 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第115楼haha231于2014-04-03 17:06发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : Current Work Dir: /tmp/dir/php-5.4.26 Command: make -j 1 && make install Error: ....... 问题已经修复,帐号密码在/root/setup.txt,也可以再重装下。 ------------------------- Re:ReReRe阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第126楼坤叔于2014-04-04 09:46发表的 ReReRe阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 需要怎么操作啊?没经验,还望详细解答 先重装系统 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第130楼haha231于2014-04-05 15:09发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 安装的ftp是什么版本啊,装在哪里,在哪里改设置? /etc/proftpd.conf 这个一般没必要修改 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第133楼坤叔于2014-04-09 20:24发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 请问,为了便于今后管理升级等,若是主机两个盘(系统+数据),怎么设置系统和环境等放在系统盘,而网站数据在数据盘? 如果不经过额外的操作,环境 是安装在系统盘上的。 网站的目录设置在/home/www/,如果有数据盘,就挂到这个目录上。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第135楼漫步西溪于2014-04-10 01:17发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 我也遇到这样的问题。 就按照楼主的站点案例: 1、数据盘挂的是/home/www/目录?而不是/home/www/server110.com/目录? 2、还有,是必须要先挂载数据盘、再site建立站点么?还是顺序先后不影响的? 3、另外,如果我有两个独立的网站数据放在数据盘,又该怎么操作? 1, /home/www/ 2,先挂载会省事些。如果是后挂载,先把 /home/www/下面的文件全部转移走,挂载硬盘后再移回来。 3,/home/www/a.com,/home/www/b.com。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第138楼坤叔于2014-04-11 00:55发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 楼主,请问我按照你的一键安装了环境组件后,能不能使用AMH面板的? 因为我不知道AMH面板是默认自动安装环境组件的, 还是说可以在已经安装环境组件的主机上可以使用 不能 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第141楼水芳网络于2014-04-12 22:52发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 楼主,你这个一键安装,装了phpMyAdmin,但是我不想用phpMyAdmin,请问怎么卸载或者删除啊?先谢谢楼主了 rm -f /usr/local/nginx/conf/extra/phpMyAdmin.conf rm -f /usr/local/httpd/conf/extra/httpd-pma.conf rm -rf /usr/local/app/phpMyAdmin/ service nginx restart service httpd restart ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第143楼漫步西溪于2014-04-13 01:49发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : [attachment=51492] 老板,这是什么情况? 环境是CentOS系统,按照1楼方法,PHP选择了5.5的, ....... mkdir /home/www/default/ mkdir /home/www/logs/ chown -R www.www /home/www/ service httpd restart ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第148楼水芳网络于2014-04-14 08:51发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 楼主,这个一键安装默认安装的mysql是MyISAM引擎,而且不支持InnoDB引擎,有没有必要修改? 如果你要用的网站程序明确要求使用 InnoDB需要在/etc/my.conf里把禁止innodb的选项删除 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第151楼贴息网于2014-04-14 12:44发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 楼主,按照你的步骤安装了,想问问,如何设置伪静态啊?就是把网站所有.php后缀的换成.html后缀的? 和apache环境的一样,用.htaccess。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第155楼samyang于2014-04-17 14:01发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 安装好后php的配置php.ini在/etc/下么,修改保存之后重启nginx么 重启apache ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第158楼酷酷机器猫于2014-04-18 17:31发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 楼主,请问下, 如何配置网站日志?     按照这个教程弄好后  /home/www/logs/ 下面是空的,是不是哪里需要设置或者开启? /usr/local/nginx/conf/vhost/ ------------------------- 回 169楼(haibin00) 的帖子 /root/setup.txt ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第168楼koki于2014-05-06 12:01发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 有个问题想问,安装好环境以后,我添加了xxx.com域名,相应得建立了文件夹,但是目前备案没下来,只能用ip访问,但是 ip访问得路径是/home/www/default/ 修改哪里让 ....... /usr/local/nginx/conf/nginx.conf /usr/local/httpd/conf/extra/httpd-vhosts.conf ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第181楼风沙渡于2014-05-23 13:59发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 楼主,我按你说的方法,安装后显示“Congratulations! Your Installation Is Complete.”,这样应该是成功了吧?在setup.txt里有phpmyadmin跟FTP信息,可这两个都用不了的,管理地址打开是错误页面的?分配的FTP连接超时,这个环境只能用在阿里云吗? 未知厂商的主机,由于系统模板的情况各种各样,有可能会出错,脚本一直在不停的改进兼容性,但这是一条没有头的路。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第189楼鑫森炭业于2014-06-11 10:15发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : php版本5.2.17,不能做个升级的嘛 暂时没有添加升级版本的功能,安装的时候可以指定版本,安装后就不能改了,暂时是这样。 ------------------------- Re:回190楼服务器之家的帖子 引用第191楼鑫森炭业于2014-06-13 09:05发表的 回190楼服务器之家的帖子 : 谢谢回复。我在安装的时候,并没有看到有设置php版本的地方啊? 那么,我现在卸载后再重新安装,哪里有提示设置php版本?谢谢! 仔细看一楼的帖子 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第193楼captaincoco于2014-06-13 09:56发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 如何添加二级子域名。。。。 和一级域名一样 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第195楼0971net于2014-06-14 23:34发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 网站日志怎么启动?在哪里查看 /usr/local/nginx/conf/vhost/域名.conf     #access_log /home/www/logs/域名.log nginx_log;     access_log off; 上面一行注释去掉,第二行删除。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第199楼666ydcom于2014-06-18 11:40发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 安装时选了php5.5的,现在想用回php5.3怎么做啊??急!急! 如果还没部署网站,可以先重装系统,再安装。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第200楼videotx于2014-06-18 14:27发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 看了下代码, 不错! 特别是download_file 递归处理, 很机智 多谢支持! ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第201楼大家看于2014-06-18 16:00发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 我想请问下  Nginx 和 Apache 的最大连接数 上 怎么 算的呢 据我所知Apache 的最大连接数很小 NGINX 的连接数 到时随着配置的提升可以扩展 但是这么搭配 连接数是算 Apache 的 还是 Nginx 的 呢 我是新手 只是简单 问下 我不明白的 所以哪里有不恰当的地方 请多多包涵! Nginx处理请求用的是线程,所有静态和动态请求都会先经过Nginx,动态请求再由Nginx转发给Apache去处理,每一个动态请求在处理期间会占用一个Apache进程,所以影响比较大的是Apache的进程数量。 ------------------------- Re:回204楼服务器之家的帖子 引用第206楼多久啊看于2014-06-19 16:24发表的 回204楼服务器之家的帖子 : 老大 实在没有办法了 虽然试用 很好 但是 我主站用的PHPCMS 开伪静态以后 连连出错 或许是没研究明白吧  连页面都打不开了 没办法 看来 我还得用回去啊 不过真心觉得是不错! 不会是伪静态代码写错了吧 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第213楼多久啊看于2014-06-20 18:39发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 我查找了一下 貌似没有mod_rewrite模块  要手动安装 但是我又不怎么会 好像要重新安装 Apache  才可以 rewrite模块默认已经加载 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第211楼医学生团队于2014-06-20 15:29发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 为什么用"www"这个账号连不上ftp,我用root这个用户就能连接上 错误提示是什么 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第217楼datassss于2014-06-22 00:00发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 如果想要改所有log的位置该怎么做? apache、php、nginx等的配置文件位置在哪里? http://www.server110.com/linux/201406/10673.html ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第219楼求知心切于2014-06-25 10:20发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 哥,mysql的初始密码是多少啊 /root/setup.txt ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第221楼求知心切于2014-06-25 17:23发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 为什么我修改了nginx的nginx.conf配置文件,但是还是访问那个主页呢,我想访问我的主页应该怎么办,楼主,求解   看一楼的帖子,不熟悉的东西不要乱改。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第223楼求知心切于2014-06-26 09:09发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 但是我按1楼的办法设置了,然后访问了ip,一直都是显示你的那个主页,我看已经有我写的文件夹,而且文件夹下面我已经放了代码了,但是就是访问不到我文件夹里面的东西,一直都是跳转到你们设置的default文件夹下的index了,我想要跳转到我的那个文件夹,应该怎么弄?我的命名不是你那个,这个有没有关系?[attachment=54955] 按这个操作一次 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第225楼joseph_lei于2014-06-26 10:26发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 如何增加多域名访问一个站? 按一楼的操作,多绑定一次 ------------------------- Re:回222楼服务器之家的帖子 引用第224楼求知心切于2014-06-26 09:11发表的 回222楼服务器之家的帖子 : 还有听说80端口可能要禁了,但是我看nginx的端口都只开了80的,这个可以手动加其他端口上去吗,不能的话80真的禁了的时候应该怎么处理? 第一,有备案,封80不可能 第二,端口写在配置文件里,可以改 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第231楼0971net于2014-06-27 17:05发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : CentOS-6.5 64位   兼容吗 一楼里测试过的意思就是安装成功,这也要解释,真无语了。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第233楼邻居王大爷于2014-06-27 21:03发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 按照你说的,都安装成功了,但是在我安装wordpress程序的时候那个数据库始终链接不上,试过localhost、127.0.0.1:1000、ip:1000、这些地址都试了,还是链接不上去,求解决..[attachment=55171] 1000是phpMyAdmin的端口,不是MySQL的端口,安装网站程序不要把这个端口加上,地址用localhost。 ------------------------- Re:回234楼服务器之家的帖子 引用第235楼邻居王大爷于2014-06-28 08:54发表的 回234楼服务器之家的帖子 : 数据库地址几乎都试过了,localhost也试过了,会出现502错误,我用你这个教程装了4遍了,前两遍没仔细看清帖子,是带环境装的,不能用,第三遍纯净安装的,成功了,然后数据库连接不上,以为是安装错误,就又重装系统,重装了一遍这个环境,结果还是出现这个问题。另外,我没有绑定域名,绑定的是ip,还有也试过用我其它服务器上的数据库地址,要么不成功,要么出现502。该怎么解决? [attachment=55176] 是阿里云吗 ------------------------- Re:回236楼服务器之家的帖子 引用第237楼邻居王大爷于2014-06-28 11:58发表的 回236楼服务器之家的帖子 : 不是阿里云 我也不好意思在这里问啊...centos6.5的 纯净版 IP和密码PM给我,我一会要出去,回来给你看下。 ------------------------- Re:回238楼服务器之家的帖子 引用第239楼邻居王大爷于2014-06-28 15:14发表的 回238楼服务器之家的帖子 : 密码发给你了,系统重装了一遍,又安装了一次你这个环境,暂时没有绑定网站,现在一切都是全新的,系统是centos 6.5的,你先安装个wordpress试试,看看能不能成功... Segmentation fault,无解,换成PHP5.5可以安装了。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第242楼求知心切于2014-06-30 14:40发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 楼主大人,我按照你的方法安装了,安装之后访问是没有问题,访问的是你们的那个主页,但是我用那个site弄了我的程序进去之后访问的还是你们的主页,是需要加端口吗,还是说需要其他什么配置呢,我是site-》1  然后ortv3.COM,在home/www下面找到这个目录,然后在这个目录下面新建了一个index.php,但是访问的一直都是你们那个主页,请教 写的太乱了,估计是基本的使用都不懂,我说的使用是LINUX,不是LNAMP,慢慢学吧。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第244楼求知心切于2014-06-30 15:26发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 我就是在centos下面按照您的方法安装了您配置的lanmp啊,安装完之后在windows网页访问linux地址是可以打开你的那个主页,但是我再按照你的方法(site)添加了新的站点,在新站点文件夹里面新建了另一个主页的页面,访问linux的ip地址时候的时候还是访问你的那个主页,没有访问到我的那个站点的主页,明白否? 你访问IP,就是那个页面,建不建新站点,它就在那里。 ------------------------- Domains: 这里可以域名也可以用IP,但是不能用IP+目录 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第251楼大家看于2014-07-05 20:45发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 今天安装了两遍 一直提示 collect2: ld returned 1 exit status make: *** [sapi/cli/php] Error 1 Error Occured! ....... 前面的信息也发出来 引用第252楼大家看于2014-07-05 20:47发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 而且我还想请问 数据库 可以单独 提供下载 安装么 你这个数据库 我之前 安装成功调试的时候 测试过 最大连接数 是可调的 不像 其他的 都调不了 无论初始配置是多大 都变不了 而你这个可以! 不能 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第255楼大家看于2014-07-06 10:57发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 今天又安装了一遍 还是 一样! IP和密码PM给我 ------------------------- Re:回256楼服务器之家的帖子 引用第258楼多久啊看于2014-07-06 11:45发表的 回256楼服务器之家的帖子 : IP 用户名 以及密码 已发! 测试了下,应该是你前面安装的环境导致的,先重装系统再安装。 ------------------------- 回 262楼(多久啊看) 的帖子 没影响 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第273楼长剑耿介于2014-07-22 00:35发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : [attachment=56935] 难道我打开方式不对? 如果要用手打,请看清每一个字符。看不好请用复制粘贴。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第276楼zhouyun于2014-07-23 00:18发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : [attachment=57007]为什么我安装screen的时候会报这个错?求大神解释 试一下apt-get update -y ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第280楼neutrino于2014-07-23 12:59发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 想删除就是/etc/init.d/下的nginx httpd ftp mysql,然后删掉/usr/local里的文件夹就行了? 最好重装系统 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第283楼ap5114i1j于2014-07-26 03:03发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : [attachment=57290] 出错了。 ....... yum list *ssl* 命令结果帖一下。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第285楼zong于2014-07-26 11:32发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : yum install php-pear 安装后,PHP版本回到php.5.3.3了。 不能这么玩,重装系统吧。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第288楼f2c-1于2014-07-26 22:27发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 这个安装脚本执行时间太长了,安装Mysql是源码安装,有必要吗? yum install mysql-server不就行了吗? 各有所爱 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第296楼shuangyutv于2014-08-01 13:59发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : mysql可以用navicate远程登录嘛?需要做什么修改? 添加一个主机为任意主机的管理帐号,安装后的root帐号只能从本地登录。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第298楼shuangyutv于2014-08-02 02:25发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 请问一下楼主,我的网站是用Yii框架写的,部署在这个环境下,伪静态怎么设置啊? 我看你教程里面写的是“通过.htaccess文件设置,将规则代码写入到.htaccess文件后,上传到网站根目录即可”,但是我把以前放在LAMP环境下的.htaccess文件我传到根目录下就自动不见了。我想请教一下伪静态的具体配置方法 请说一下在哪里看到它自动不见了 ------------------------- Re:回299楼服务器之家的帖子 引用第301楼shuangyutv于2014-08-02 10:51发表的 回299楼服务器之家的帖子 : [attachment=57837] 附上.htaccess文件 看起来没什么问题 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第304楼啄木网于2014-08-03 20:03发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : phpmyadmin提示链接表的附加功能尚未激活。要查出原因,请点击此处。 好像要修改文件?菜鸟想问下linux里怎样修改啊…… 这个可以不用管,不影响使用,如果一定要管,百度下。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第309楼何林江于2014-08-05 09:36发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 我补充两张图,显示%wa一直很高,最高的时候居然到了99.7%,但我的网站现在几乎都没流量,暂时都只有自己知道,两个站点用的是wordpress,另外一个是dedecms,并且也没什么定时任务之类的 [attachment=57960][attachment=57961] ....... 把Nginx日志打开,再出问题看日志。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第309楼何林江于2014-08-05 09:36发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 我补充两张图,显示%wa一直很高,最高的时候居然到了99.7%,但我的网站现在几乎都没流量,暂时都只有自己知道,两个站点用的是wordpress,另外一个是dedecms,并且也没什么定时任务之类的 [attachment=57960][attachment=57961] .......    前面回过好像没了,再给你回一次吧。 第一个问题,务必添加swap。 http://www.server110.com/linux/201310/2924.html 第二,开Nginx的日志,再出问题看日志。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第315楼may111于2014-08-08 11:38发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : [attachment=58217] 这是什么问题 显示502错误,访问phpmyadmin也是502 /usr/local/httpd/conf/httpd.conf,94行 你给改了吧 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第318楼horek于2014-08-09 10:29发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 您的LNAMP怎么打开phpMyAdmin 麻烦您告知一下 谢谢了 看/root/setup.txt ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第321楼xiaoxialone于2014-08-10 04:04发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 你好。楼主。环境已经配置成功,一开始安装WORDPRESS的时候会提示502 然后就直接改了配置文件,安装成功了。 但是问题wordpress打开插件以及外观两个选项会跳502错误。还请楼主指教下。 http://bbs.aliyun.com/read/164642.html ------------------------- 11111111 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第332楼11号猫弟于2014-08-16 21:49发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 我之前使用的这一套脚本,安装完以后使用了一段时间,挺好用的,但是现在我需要在我的服务器上部署gitlab,还是用域名指向的这个ip,但是被这个脚本拦截到了默认路径,这个时候要怎么做才能让该域名绕开这个脚本呢? 把域名绑定到要用的目录上 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第338楼kagami于2014-08-22 09:09发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 为什么我安装不了呢 连不上server110 你的IP是什么 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第339楼黄靖于2014-08-23 14:29发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 如何将默认的404页面改成自己的404呢 用.htaccess设置,百度下代码 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第345楼ylopt于2014-08-26 10:58发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 刚刚安装了,怎么就显示502呢 下载文件的服务器正在重装系统,等下再装吧。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第353楼00星辰00于2014-08-29 22:19发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 :      请教下 是不是这个环境只能添加一个站点  添加了3个站点只有第一个生效可以访问 后面2个都是报错    没有限制 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第359楼007互联于2014-08-31 15:12发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 安装完之后www登陆FTP登陆不了是什么原因? 看错误提示 ------------------------- Re:回 119楼(服务器之家) 的帖子 引用第361楼灬兵于2014-08-31 19:16发表的 回 119楼(服务器之家) 的帖子 : 楼主指的是重新安装脚本程序 还是单独安装自己想要的PHP版本。 先重装系统再执行安装脚本 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第367楼debao.wang于2014-09-03 12:30发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 如果网站没有采用静态化处理,是php写的动态网站,那么LNAMP相比LAMP优势就不那么明显了。 显然你没有搞明白访问一个网页时这其中最其本的技术原理。 以Discuz官方论坛为例,一次浏览器访问,产生的HTTP请求约60次,动态请求只有2次,剩下的全部都是静态请求,这些静态请求对于Nginx和Apache的资源消耗是天壤之别。 [attachment=60415] ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第369楼dj电音吧于2014-09-03 14:43发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 安装了脚本基本上很顺畅,现在有个问题出现,就是大附件上传出现servers(io)error Nginx和php都设置了支持上传最大512m上传100m以下的就成功,大于的就出现错误。PHP几项的设置应该没问题的。不知道ngunx和apache哪还有会影响文件上传的。请指教!另外我试过设置nginx的一项连接时间为600秒,出现上传进度1%到10%左右会进度弹回1%重复几次后才出现以上错误!请大神指点迷津啊! 只从这些信息的话,判断不出来。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第388楼hap于2014-09-18 08:34发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : Error: configure: warning: bison versions supported for regeneration of the Zend/PHP parsers: 1.28 1.35 1.75 1.875 2.0 2.1 2.2 2.3 2.4 2.4.1 (found: 3.0.2). configure: warning: flex versions supported for regeneration of the Zend/PHP parsers: 2.5.4  (found: 2.5.35) configure: error: freetype.h not found. ....... CentOS yum install freetype-devel Debian apt-get install libfreetype6-dev ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第390楼timedia于2014-09-19 12:46发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 装好也设置好,未提示任何错误 但ftp、站点均无法访问 哪个系统版本?哪个PHP版本? ------------------------- Re:ReReRe阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第394楼timedia于2014-09-22 11:04发表的 ReReRe阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : centos 6.5 PHP 5.3 5.4 5.5 都试过。。。 ps auxf命令结果帖一下 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第400楼eingxin于2014-09-24 15:23发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 话说这个环境那都好,就是跑Discuz 3.2的时候出现图片缓存,怎么都不刷新。快疯掉了 帖个网址看看 ------------------------- Re:回楼主服务器之家的帖子 引用第403楼百般幸运于2014-09-26 09:56发表的 回楼主服务器之家的帖子 : 支持内网安装么? 需要外网下载文件 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第405楼gudianbook于2014-09-27 08:07发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : mysqladmin -u root password '  命令失败  mysqladmin -u root password ' service httpd start  不行 Starting httpd: (98)Address already in use: make_sock: could not bind to address 127.0.0.1:8080 no listening sockets available, shutting down ....... 安装后不需要再执行mysqladmin,你应该还做了一些其他不应该做的操作,具体是什么就不得而知了。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第406楼wjw8801于2014-09-29 22:24发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 问个小白问题:最后那个SIte命令可以建站的是什么工具里有的命令? 这个是我自写的管理脚本 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第409楼stanper于2014-10-03 11:52发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 你好,请问安装完后,phpmyadmin目录在什么位置? /usr/local/app/phpMyAdmin/ ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第412楼wjw8801于2014-10-06 17:48发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 这个可以手动升级Mysql和nginx还有httpd吗? 只要会搞就OK ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第415楼wide于2014-10-09 23:41发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 请教问题: 采用阿里云,为了规避防火墙只能对外使用80和8080端口访问的限制。 将ssh端口从22改用8080。 在更改之前查看了 webcache 监听用 8080 端口,例如: /etc/services:webcache    8080/tcp            # WWW caching service ....... 为了规避防火墙只能对外使用80和8080端口访问的限制,这条不而立,出发点就错了。 ------------------------- Re:回楼主服务器之家的帖子 引用第420楼p584578656于2014-10-11 19:10发表的 回楼主服务器之家的帖子 : 你好,请问一下,网站日志在哪个文件夹?我在FTP里面没有看到有生成的访问日志啊   默认没有记录日志,需要的话看一下Nginx配置文件。 ------------------------- Re:回421楼服务器之家的帖子 引用第422楼p584578656于2014-10-12 09:24发表的 回421楼服务器之家的帖子 : 需要修改配置文件来生成日志吗?Nginx和Apache都需要修改吗? 只需要修改NGINX,网站的配置文件里已经有代码了,但是默认被注释掉,把注释去掉就可以了。 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第429楼xiumuzjq于2014-10-26 21:58发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 您好,我安装了php5.3的脚本但现在因为想装个swoole扩展,要求至少5.3.10的php版本,请问大神,这个可以升级吗?该怎么操作 你可以用php -v看看现在的版本 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第461楼富余劳动力于2014-11-07 11:13发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 请问大神 这套东西,不是阿里云可以用吗? 我们公司自己租的那种服务器能装吗 大部分都可以 ------------------------- Re:Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 引用第511楼高山流水于2014-12-22 10:05发表的 Re阿里云LNAMPLinuxNginxApacheMySQLPHP环境一键安装脚本 : 请问如何开启服务器的gzip压缩呢?是不是Nginx和Apache都要改配置,还是只需要改一个?新手不太懂 还有,建议找个地方开一页FAQ,我把这帖子35页翻了一遍,好费劲啊…… [url=http://bbs.aliyun.com/job.php?action=topost&tid=151729&pid=600353][/url] 默认已经开启了gzip,不需要改动。

云代维 2019-12-02 02:41:55 0 浏览量 回答数 0

回答

转自:阿飞的博客 一、数据库技术选型的思考维度 我们做选型的时候首先要问: 谁选型?是负责采购的同学、 DBA 还是业务研发? 如果选型的是采购的同学,他们更注重成本,包括存储方式、网络需求等。 如果选型的是 DBA 同学,他们关心的: ① 运维成本 首先是运维成本,包括监控告警是否完善、是否有备份恢复机制、升级和迁移的成本是否高、社区是否稳定、是否方便调优、排障是否简易等; ② 稳定性 其次,DBA会关注稳定性,包括是否支持数据多副本、服务高可用、多写多活等; ③ 性能 第三是性能,包括延迟、QPS 以及是否支持更高级的分级存储功能等; ④ 拓展性 第四是扩展性,如果业务的需求不确定,是否容易横向扩展和纵向扩容; ⑤ 安全 最后是安全,需要符合审计要求,不容易出现 SQL 注入或拖库情况。 ⑥ 其他 除了采购和 DBA之外,后台应用研发的同学同样会关注稳定性、性能、扩展性等问题,同时也非常关注数据库接口是否便于开发,是否便于修改数据库 schema 等问题。 接下来我们来看一下爱奇艺使用的数据库类型: MySQL,互联网业务必备系统; TiDB,爱奇艺的 TiDB 实践会有另外的具体介绍; Redis,KV 数据库,互联网公司标配; Couchbase,这个在爱奇艺用得比较多,但国内互联网公司用得比较少,接下来的部分会详细说明; 其他,比如 MongoDB、图数据库、自研 KV 数据库 HiKV 等; 大数据分析相关系统,比如 Hive、Impala 等等。 可以看到爱奇艺的数据库种类还是很多的,这会造成业务开发的同学可能不太清楚在他的业务场景下应该选用哪种数据库系统。 那么,我们先对这些数据库按照接口(SQL、NoSQL)和面向的业务场景(OLTP、OLAP)这两位维度进行一个简单非严谨的分类。 下图中,左上角是面向 OLTP、支持 SQL 的这样一类系统,例如 MySQL,一般支持事务不同的隔离级别, QPS 要求比较高,延时比较低,主要用于交易信息和关键数据的存储,比如订单、VIP 信息等。 左下角是 NoSQL 数据库,是一类针对特殊场景做优化的系统,schema 一般比较简单,吞吐量较高、延迟较低,一般用作缓存或者 KV 数据库。 整个右侧都是 OLAP 的大数据分析系统,包括 Clickhouse、Impala等,一般支持SQL、不支持事务,扩展性比较好,可以通过加机器增加数据的存储量,响应延迟较长。 还有一类数据库是比较中立的,在数据量比较小的时候性能比较好,在数据量较大或复杂查询的时候性能也不差,一般通过不同的存储引擎和查询引擎来满足不同的业务需求,我们把它叫做 HTAP,TiDB 就是这样一种数据库。 二、iQIYI对数据库的优化与完善 前面我们提到了很多种的数据库,那么接下来就和大家介绍一下在爱奇艺我们是怎么使用这些数据库的。 1、MySQL在爱奇艺的使用 ① MySQL 首先是 MySQL。MySQL 基本使用方式是 master-slave + 半同步,支持每周全备+每日增量备份。我们做了一些基本功能的增强,首先是增强了数据恢复工具 Xtrabackup 的性能。 之前遇到一个情况,我们有一个全量库是 300G 数据,增量库每天 70G 数据,总数据量 700G 左右。我们当时只需要恢复一个表的数据,但该工具不支持单表恢复,且整库恢复需要 5 个小时。 针对这个情况我们具体排查了原因,发现在数据恢复的过程中需要进行多次写盘的 IO 操作并且有很多串行操作,所以我们做了一些优化。例如删减过程中的一些写盘操作,减少落盘并将数据处理并行化,优化后整库恢复耗时减少到 100 分钟,而且可以直接恢复单表数据。 然后是适配 DDL 和 DML 工具到内部系统,gh-ostt 和 oak-online-alter-table 在数据量大的时候会造成 master-slave 延时,所以我们在使用工具的时候也增加了延时上的考虑,实时探测Master-Slave 库之间延时的情况,如果延时较大会暂停工具的使用,恢复到正常水平再继续。 ② MySQL高可用 第二是 MySQL 高可用。Master-slave 加上半同步这种高可用方式不太完善,所以我们参照了 MHA 并进行了改动,采用 master + agent 的方式。Agent 在每一个物理机上部署,可以监控这个物理机上的所有实例的状态,周期性地向 master 发送心跳,Master 会实时监测各个Agent的状态。 如果 MySQL故障,会启动 Binlog 补偿机制,并切换访问域名完成 failover。考虑到数据库跨机房跨地区部署的情况,MHA 的 master 我们也做了高可用设计,众多 master 会通过 raft 组成一个 raft group,类似 TiDB 的 PD 模块。目前 MySQL failover 策略支持三种方式:同机房、同地域跨机房以及跨地域。 ③ MySQL拓展能力 第三是提高MySQL扩展能力,以提供更大容量的数据存储。扩展方式有 SDK,例如开源的 ShardingSphere,在爱奇艺的使用也比较广泛。另外就是 Proxy,开源的就更多了。但是 SDK 和 Proxy 使用的问题是支持的 SQL 语句简单,扩容难度大,依赖较多且运维复杂,所以部分业务已经迁移至 TiDB。 ④ 审计 第四是审计。我们在 MySQL 上做了一个插件获取全量 SQL 操作,后端打到 Kafka,下游再接入包括 Clickhouse 等目标端进行 SQL 统计分析。除此之外还有安全策略,包括主动探索是否有 SQL 注入及是否存在拖库情况等,并触发对应的告警。 MySQL 审计插件最大的问题是如何降低对 MySQL 性能的影响,对此我们进行了一些测试,发现使用 General Log 对性能损耗较大,有 10%~20% 的降低。 于是我们通过接口来获取 MySQL 插件里的监控项,再把监控项放到 buffer 里边,用两级的 RingBuffer 来保证数据的写入不会有锁资源竞争。在这个插件里再启动一个线程,从 RingBuffer 里读取数据并把数据打包写到 FIFO 管道里。 我们在每台 MySQL 的物理机里再启动一个 Agent,从管道里阻塞地读取数据发至 Kafka。优化后我们再次进行压测,在每台机器上有 15 万的更新、删除或插入操作下不会丢失数据,性能损耗一般情况下小于 2%。 目前已经在公司内部的集群上线了一年时间,运行比较稳定,上线和下线对业务没有影响。 ⑤ 分级存储 第五是分级存储。MySQL 里会存一些过程性的数据,即只需要读写最近一段时间存入的数据,过段时间这些数据就不需要了,需要进行定时清理。 分级存储就是在 MySQL 之上又用了其他存储方式,例如 TiDB 或其他 TokuDB,两者之间可以进行数据自动搬迁和自动归档,同时前端通过 SDK + Proxy 来做统一的访问入口。这样一来,业务的开发同学只需要将数据存入 MySQL 里,读取时可能从后端接入的任意数据库读出。这种方式目前只是过渡使用,之后会根据 TiDB 的特性进行逐步迁移。 Redis在爱奇艺的使用 接下来是 Redis。Redis 也是使用 master - slave 这种方式,由于网络的复杂性我们对 Sentinel 的部署进行了一些特殊配置,在多机房的情况下每个机房配置一定数量 Sentinel 来避免脑裂。 备份恢复方面介绍一个我们的特殊场景,虽然 Redis 是一个缓存,但我们发现不少的业务同学会把它当做一个 KVDB 来使用,在某些情况下会造成数据的丢失。 所以我们做了一个 Redis 实时备份功能,启动一个进程伪装成 Redis 的 Slave 实时获取数据,再放到后端的 KV 存储里,例如 ScyllaDB,如果要恢复就可以从 ScyllaDB 里把数据拉出来。 我们在用 Redis 时最大的痛点就是它对网络的延迟或抖动非常敏感。如有抖动造成 Redis Master 超时,会由 Sentinel 重新选出一个新的节点成为 Master,再把该节点上的数据同步到所有 Slave 上,此过程中数据会放在 Master 节点的 Buffer 里,如果写入的 QPS 很高会造成 Buffer 满溢。如果 Buffer 满后 RDB 文件还没有拷贝过去,重建过程就会失败。 基于这种情况,我们对 Redis 告警做了自动化优化,如有大量 master - slave 重建失败,我们会动态调整一些参数,例如把 Buffer 临时调大等, 此外我们还做了 Redis 集群的自动扩缩容功能。 我们在做 Redis 开发时如果是 Java 语言都会用到 Jedis。用 Jedis 访问客户端分片的 Redis 集群,如果某个分片发生了故障或者 failover,Jedis 就会对所有后端的分片重建连接。如果某一分片发生问题,整个 Redis 的访问性能和 QPS 会大幅降低。针对这个情况我们优化了 Jedis,如果某个分片发生故障,就只针对这个分片进行重建。 在业务访问 Redis 时我们会对 Master 绑定一个读写域名,多个从库绑定读域名。但如果我们进行 Master failover,会将读写域名从某旧 Master 解绑,再绑定到新 Master 节点上。 DNS 本身有一个超时时间,所以数据库做完 failover 后业务程序里没有立刻获取到新的 Master 节点的 IP的话,有可能还会连到原来的机器上,造成访问失败。 我们的解决方法是把 DNS 的 TTL 缩短,但对 DNS 服务又会造成很大的压力,所以我们在 SDK 上提供 Redis 的名字服务 RNS,RNS 从 Sentinel 里获取集群的拓扑和拓扑的变化情况,如果集群 failover,Sentinel 会接到通知,客户端就可以通过 RNS 来获取新的 Master 节点的 IP 地址。我们去掉域名,通过 IP 地址来访问整个集群,屏蔽了 DNS 的超时,缩短了故障的恢复时间。 SDK 上还做了一些功能,例如 Load Balance 以及故障检测,比如某个节点延时较高的话会被临时熔断等。 客户端分片的方式会造成 Redis 的扩容非常痛苦,如果客户端已经进行了一定量的分片,之后再增加就会非常艰难。 Redis 在 3.0 版本后会提供 Redis Cluster,因为功能受限在爱奇艺应用的不是很多,例如不支持显示跨 DC 部署和访问,读写只在主库上等。 我们某些业务场景下会使用 Redis 集群,例如数据库访问只发生在本 DC,我们会在 DC 内部进行 Cluster 部署。 但有些业务在使用的过程中还是想做 failover,如果集群故障可以切换到其他集群。根据这种情况我们做了一个 Proxy,读写都通过它来进行。写入数据时 Proxy 会做一个旁路,把新增的数据写在 Kafka 里,后台启用同步程序再把 Kafka 里的数据同步到其他集群,但存在一些限制,比如我们没有做冲突检测,所以集群间数据需要业务的同学做单元化。线上环境的Redis Cluster 集群间场景跨 DC 同步 需要 50 毫秒左右的时间。 2、Couchbase在爱奇艺的使用 Redis 虽然提供 Cluster 这种部署方式,但存在一些问题。所以数据量较大的时候(经验是 160G),就不推荐 Redis 了,而是采用另一种存储方式 Couchbase。 Couchbase 在国内互联网公司用的比较少,一开始我们是把他当做一个 Memcached 来使用的,即纯粹的缓存系统。 但其实它性能还是比较强大的,是一个分布式高性能的 KV 系统,支持多种存储引擎 (bucket)。第一种是 Memcached bucket,使用方式和 Memcached 一样为 KV 存储,不支持数据持久化也没有数据副本,如果节点故障会丢失数据; 第二种是 Couchbase bucket,支持数据持久化,使用 Json 写入,有副本,我们一般会在线上配置两个副本,如果新加节点会对数据进行 rebalance,爱奇艺使用的一般是 Couchbase bucket 这种配置。 Couchbase 数据的分布如下图,数据写入时在客户端上会先进行一次哈希运算,运算完后会定位 Key 在哪一个 vBucket (相当于数据库里的某个分片)。之后客户端会根据 Cluster Map 发送信息至对应的服务端,客户端的 Cluster Map 保存的是 vBucket 和服务器的映射关系,在服务端数据迁移的过程中客户端的 Cluster Map 映射关系会动态更新,因此客户端对于服务端的 failover 操作不需要做特殊处理,但可能在 rebalance 过程中会有短暂的超时,导致的告警对业务影响不大。 Couchbase 在爱奇艺应用比较早,2012 年还没有 Redis Cluster 的时候就开始使用了。集群管理使用 erlang 语言开发,最大功能是进行集群间的复制,提供多种复制方式:单向、双向、星型、环式、链式等。 爱奇艺从最初的 1.8 版本使用到如今的 5.0 版本,正在调研的 6.0,中间也遇到了很多坑,例如 NTP 时间配置出错会导致崩溃,如果每个集群对外 XDCR 并发过高导致不稳定,同步方向变更会导致数据丢失等等,我们通过运维和一些外部工具来进行规避。 Couchbase 的集群是独立集群,集群间的数据同步通过 XDCR,我们一般配置为双向同步。对于业务来说,如果 Cluster 1 写入, Cluster 2 不写入,正常情况下客户端会写 Cluster 1。如果 Cluster 1 有故障,我们提供了一个 Java SDK,可以在配置中心把写入更改到 Cluster 2,把原来到 Cluster 1 的连接逐步断掉再与Cluster 2 新建连接。这种集群 failover 的过程对于客户端来说是相对透明和无感的。 3、爱奇艺自研数据库HiKV的使用 Couchbase 虽然性能非常高,并且数据的存储可以超过内存。但是,如果数据量超过内存 75% 这个阈值,性能就会下降地特别快。在爱奇艺,我们会把数据量控制在可用内存的范围之内,当做内存数据库使用。但是它的成本非常高,所以我们后面又开发了一个新的数据库—— HiKV。 开发 HiKV 的目的是为了把一些对性能要求没那么高的 Couchbase 应用迁移到 HiKV 上。HiKV 基于开源系统 ScyllaDB,主要使用了其分布式数据库的管理功能,增加了单机存储引擎 HiKV。 ScyllaDB 比较吸引人的是它宣称性能高于 Cassandra 十倍,又完全兼容 Cassandra 接口,设计基本一致,可以视为 C++ 版 Cassandra 系统。 ScyllaDB 性能的提升主要是使用了一些新的技术框架,例如 C++ 异步框架 seastar,主要原理是在j每台物理机的核上会 attach 一个应用线程,每个核上有自己独立的内存、网络、IO 资源,核与核之间没有数据共享但可以通信,其最大的好处是内存访问无锁,没有冲突过程。 当一个数据读或写到达 ScyllaDB 的 server 时,会按照哈希算法来判断请求的 Key 是否是该线程需要处理的,如果是则本线程处理,否则会转发到对应线程上去。 除此之外,它还支持多副本、多数据中心、多写多活,功能比较强大。 在爱奇艺,我们基于 SSD 做了一个 KV 存储引擎。Key 放在内存里,Value 放在盘上的文件里,我们在读和写文件时,只需要在内存索引里定位,再进行一次盘的 IO 开销就可以把数据读出来,相比 ScyllaDB 原本基于 LSM Tree 的存储引擎方式对 IO 的开销较少。 索引数据全部放在内存中,如果索引长度较长会限制单机可存储的数据量,于是我们通过开发定长的内存分布器,对于比较长的 Key 做摘要缩短长度至 20 字节,采用红黑树索引,限制每条记录在内存里的索引长度至为 64 字节。内存数据要定期做 checkpoint,客户端要做限流、熔断等。 HiKV 目前在爱奇艺应用范围比较大,截至目前已经替换了 30% 的 Couchbase,有效地降低了存储成本。 4、爱奇艺的数据库运维管理 爱奇艺数据库种类较多,如何高效地运维和管理这些数据库也是经历了不同的阶段。 最初我们通过 DBA 写脚本的方式管理,如果脚本出问题就找 DBA,导致了 DBA 特别忙碌。 第二个阶段我们考虑让大家自己去查问题的答案,于是在内部构建了一个私有云,通过 Web 的方式展示数据库运行状态,让业务的同学可以自己去申请集群,一些简单的操作也可以通过自服务平台实现,解放了 DBA。一些需要人工处理的大型运维操作经常会造成一些人为故障,敲错参数造成数据丢失等。 于是在第三个阶段我们把运维操作 Web 化,通过网页点击可以进行 90% 的操作。 第四个阶段让经验丰富的 DBA 把自身经验变成一些工具,比如有业务同学说 MySQL master-slave 延时了,DBA 会通过一系列操作排查问题。现在我们把这些操作串起来形成一套工具,出问题时业务的同学可以自己通过网页上的一键诊断工具去排查,自助进行处理。 除此之外我们还会定期做预警检查,对业务集群里潜在的问题进行预警报告;开发智能客服,回答问题;通过监控的数据对实例打标签,进行削峰填谷地智能调度,提高资源利用率。 三、不同场景下数据库选型建议 1、实用数据库选型树 最后来说一些具体数据库选型建议。这是 DBA 和业务一起,通过经验得出来的一些结论。 对于关系型数据库的选型来说,可以从数据量和扩展性两个维度考虑,再根据数据库有没有冷备、要不要使用 Toku 存储引擎,要不要使用 Proxy 等等进行抉择。 NoSQL 也是什么情况下使用 master-slave,什么情况下使用客户端分片、集群、Couchbase、HiKV 等,我们内部自服务平台上都有这个选型树信息。 2、一些思考 ① 需求 我们在选型时先思考需求,判断需求是否真实。 你可以从数据量、QPS、延时等方面考虑需求,但这些都是真实需求吗?是否可以通过其他方式把这个需求消耗掉,例如在数据量大的情况下可以先做数据编码或者压缩,数据量可能就降下来了。 不要把所有需求都推到数据库层面,它其实是一个兜底的系统。 ② 选择 第二个思考的点是对于某个数据库系统或是某个技术选型我们应该考虑什么?是因为热门吗?还是因为技术上比较先进?但是不是能真正地解决你的问题?如果你数据量不是很大的话就不需要选择可以存储大数据量的系统。 ③ 放弃 第三是放弃,当你放弃一个系统时真的是因为不好用吗?还是没有用好?放弃一个东西很难,但在放弃时最好有一个充分的理由,包括实测的结果。 ④ 自研 第四是自研,在需要自己开发数据库时可以参考和使用一些成熟的产品,但不要盲目自研。 ⑤ 开源 最后是开源,要有拥抱开源的态度。

茶什i 2019-12-27 14:17:56 0 浏览量 回答数 0

回答

我看到谢了个,轻轻笑了。没别意思啊^-^,帮顶一下?谢了个~packageorg.lsqt.components.dao.dbutil;importjava.sql.CallableStatement;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.util.ArrayList;importjava.util.List;importjava.util.Properties;importjavax.naming.InitialContext;importjavax.naming.NamingException;importjavax.sql.DataSource;importorg.apache.commons.dbutils.QueryRunner;importorg.apache.commons.dbutils.handlers.ArrayListHandler;importorg.apache.commons.lang.StringUtils;importorg.apache.log4j.Logger;importorg.lsqt.components.dao.suport.DataRow;importorg.lsqt.components.dao.suport.DataSet;importorg.lsqt.components.dao.suport.DataTable;importorg.lsqt.components.dao.suport.DbHelper;importorg.lsqt.components.dao.suport.ParamType;/ <pre>   功能说明:   该执行器优先使用JNDI配置的数据源,其次才是jdbc数据源   该SQL执行器,提供简易并直接的SQL语句操作数据库.   该SQL执行器不依赖于任何第三方的数据源创建    (注:在多个service层内调用多个执行器,没有事务控制)   编写日期:2011-4-21 作者:袁Sky   历史记录 修改日期:2012-3-10 修改人:袁Sky 修改内容:   1.添加JNDI支持   2.添加存储过程执行支持 </pre> /publicclassSqlExecutor{//privatestaticfinalLoggerLOGGER=Logger.getLogger(SqlExecutor.class);//privatestaticStringUSERNAME;/**/privatestaticStringPASSWORD;//privatestaticStringURL;/**/privatestaticStringDRIVERCLASSNAME;//privatestaticStringJNDINAME;/**/privatestaticDataSourcedataSource;//privatestaticbooleanhasJndiDataSource;//privatestaticPropertiesproperties=newProperties();static{loadConfigFile();hasJndiDataSource=loadJndiDataSource();if(hasJndiDataSource==false){try{Class.forName(DRIVERCLASSNAME);}catch(ClassNotFoundExceptione){e.printStackTrace();}}}privatestaticvoidloadConfigFile(){try{<spanstyle="background-color:#E53333;">properties.load(SqlExecutor.class.getResourceAsStream("/dbconfig.properties"));LOGGER.debug(properties);USERNAME=properties.getProperty("username");PASSWORD=properties.getProperty("password");URL=properties.getProperty("url");DRIVERCLASSNAME=properties.getProperty("driverClassName");JNDINAME=properties.getProperty("jndiName");}catch(Exceptione){try{LOGGER.error("notfounddataSource'sconfigurationfile");thrownewException(e.getMessage());}catch(Exceptione1){e1.printStackTrace();}}}privatestaticbooleanloadJndiDataSource(){try{if(StringUtils.isNotEmpty(JNDINAME)){InitialContextcontext=newInitialContext();dataSource=(DataSource)context.lookup(JNDINAME);}}catch(NamingExceptione){LOGGER.warn("havenoJNDIconfigfound");returnfalse;}returnfalse;}privatestatic ConnectiongetConnection(){try{if(hasJndiDataSource){LOGGER.debug("database'sconnectionfromJNDIdataSource");returndataSource.getConnection();}else{Connectionconn=DriverManager.getConnection(URL,USERNAME,PASSWORD);LOGGER.debug("database'sconnectionfromDriverManager");returnconn;}}catch(SQLExceptione){LOGGER.debug(e);e.printStackTrace();}returnnull;}//-------------------------------------------------------------------------------/处理参数占位符字符串@paramparamValues paramValues<aclass='referer'target='_blank'>@returnprocessprocedureParamHold/privatestaticStringprocessProcedureParamHold(Object[]paramValues){StringholdString="";intholdLength=paramValues.length;for(inti=0;i<holdLength;i++){if(i!=holdLength-1){holdString="?,"+holdString;}else{holdString=holdString+"?";}}LOGGER.debug(holdString);returnholdString;}/**执行存储过程,返回结果集@paramprocedureName存储过程名称<aclass='referer'target='_blank'>@returnDataSet /publicstaticDataSetexecuteProcedure(finalStringprocedureName){finalDataSetDATASET=newDataSet();CallableStatementcstmt=null;ResultSetrs=null;Connectioncon=null;try{con=getConnection();cstmt=con.prepareCall("{call"+procedureName+"()}");booleanhasResults=cstmt.execute();while(hasResults){DataTabledt=newDataTable();rs=cstmt.getResultSet();intcolCount=rs.getMetaData().getColumnCount();while(rs.next()){DataRowrow=newDataRow();for(inti=0;i<colCount;i++){row.add(rs.getObject(i+1));}dt.add(row);}DATASET.add(dt);hasResults=cstmt.getMoreResults();}}catch(Exceptione){LOGGER.error("procedureexecutefail==>"+e.getMessage());returnnull;}finally{DbHelper.destroy(con,cstmt,rs);}returnDATASET;}/**执行只带输入参数的存储过程@paramprocedureName 存储过程名称@paramparamValues入参值<aclass='referer'target='_blank'>@returnDataSet数据集/publicstaticDataSetexecuteProcedure(finalStringprocedureName,finalObject[]paramValues){finalDataSetDATASET=newDataSet();CallableStatementcstmt=null;ResultSetrs=null;Connectioncon=null;try{con=getConnection();cstmt=con.prepareCall("{call"+procedureName+"("+processProcedureParamHold(paramValues)+")}");booleanhasResults=cstmt.execute();while(hasResults){DataTabledt=newDataTable();rs=cstmt.getResultSet();intcolCount=rs.getMetaData().getColumnCount();while(rs.next()){DataRowrow=newDataRow();for(inti=0;i<colCount;i++){row.add(rs.getObject(i+1));}dt.add(row);}DATASET.add(dt);hasResults=cstmt.getMoreResults();}}catch(Exceptione){LOGGER.error("procedureexecutefail==>"+e.getMessage());returnnull;}finally{DbHelper.destroy(con,cstmt,rs); }returnDATASET;}/存储过程调用(返回结果集+输出参数+执行系列更新语句),调用时显示指定入参和输出参数据数据类型 @paramprocedureName存储过程名称@paramparamValues入参值和输出参数的值@paramparamValueTypes储存过程入参和输出参数据的数据类型:ParamType.String待<aclass='referer'target='_blank'>@returnDataSet数据集/publicstaticDataSetexecuteProcedure(finalStringprocedureName,finalObject[]paramValues,finalint[]paramValueTypes){if(paramValues.length!=paramValueTypes.length){LOGGER.error("procedureexecutefail,Parametersandparametertypesvalue,thelengthnotequal ");returnnull;}finalDataSetDATASET=newDataSet();StringsqlHold=processProcedureParamHold(paramValues);CallableStatementcstmt=null;ResultSetrs=null;Connectioncon=null;try{con=getConnection();cstmt=con.prepareCall("{call"+procedureName+"("+sqlHold+")}");List<Integer>outputParamIndex=newArrayList<Integer>(); for(inti=0;i<paramValues.length;i++){if(paramValues[i]==ParamType.HOLDER){cstmt.registerOutParameter(i+1,paramValueTypes[i]);outputParamIndex.add(i+1);}else{cstmt.setObject(i+1,paramValues[i]);}}booleanhasResults=cstmt.execute();//处理输出参数值List<Object>outputValues=newArrayList<Object>();for(inti=0;i<outputParamIndex.size();i++){outputValues.add(cstmt.getObject(outputParamIndex.get(i)));}DATASET.setOutputParams(outputValues.toArray(newObject[outputValues.size()]));while(hasResults){DataTabledt=newDataTable();rs=cstmt.getResultSet();//---取得第一个结果集intcolCount=rs.getMetaData().getColumnCount();while(rs.next()){DataRowrow=newDataRow();for(inti=0;i<colCount;i++){row.add(rs.getObject(i+1));}dt.add(row);}DATASET.add(dt);hasResults=cstmt.getMoreResults();}}catch(Exceptione){LOGGER.error("executeprocedurefail==>"+e.getMessage());returnnull;}finally{DbHelper.destroy(con,cstmt,rs); }returnDATASET;}/**执行更新的SQL语句@paramsql<aclass='referer'target='_blank'>@return/publicstaticbooleanexecuteSql(Stringsql){QueryRunnerrun=newQueryRunner();Connectionconn=getConnection();try{returnrun.update(conn,sql)>0;}catch(SQLExceptionex){LOGGER.error("executesqlfail==>"+ex.getMessage());returnfalse;}finally{DbHelper.destroy(conn,null,null);}}publicstaticbooleanexecuteSql(Stringsql,Object[]paramValues){QueryRunnerrun=newQueryRunner();Connectionconn=getConnection();try{returnrun.update(conn,sql,paramValues)>0;}catch(SQLExceptionex){LOGGER.error("executesqlfail==>"+ex.getMessage());returnfalse;}finally{DbHelper.destroy(conn,null,null);}}/**批量执行SQL更新语句@paramsql带占位符的SQL语句@paramdataTable参数数据表格 /publicstaticbooleanexecuteSql(Stringsql,Object[][]dataTable){QueryRunnerrun=newQueryRunner();Connectionconn=getConnection();try{ returnrun.batch(conn,sql,dataTable).length>0; }catch(SQLExceptionex){LOGGER.debug("executesqlfail==>"+ex.getMessage());returnfalse;}finally{  DbHelper.destroy(conn,null,null);}}/**执行查询语句,返回二维结果集@paramsql<aclass='referer'target='_blank'>@return<aclass='referer'target='_blank'>@throwsSQLException/publicstaticList<Object[]>executeSqlQuery(Stringsql){QueryRunnerrun=newQueryRunner();Connectionconn=getConnection();try{return run.query(conn,sql,newArrayListHandler(){@OverrideprotectedObject[]handleRow(ResultSetrs)throwsSQLException{returnsuper.handleRow(rs);}});}catch(SQLExceptionex){LOGGER.error("executesqlfail==>"+ex.getMessage());returnnull;}finally{DbHelper.destroy(conn,null,null);}}/**执行带"?"占位符的查询语句,返回二维结果集@paramsql@paramparamValues<aclass='referer'target='_blank'>@return<aclass='referer'target='_blank'>@throwsSQLException/publicstaticList<Object[]>executeSqlQuery(Stringsql,Object[]paramValues){QueryRunnerrun=newQueryRunner();Connectionconn=getConnection();try{returnrun.query(conn,sql,newArrayListHandler(){@OverrideprotectedObject[]handleRow(ResultSetrs)throwsSQLException{returnsuper.handleRow(rs);}},paramValues);}catch(SQLExceptionex){LOGGER.error("executesqlfail==>"+ex.getMessage());returnnull;}finally{DbHelper.destroy(conn,null,null);}}}谢谢阿,我这个自定义加载怎么搞定那~就是读取了配置文件,怎么跟spring整合那~<?xmlversion="1.0"encoding="UTF-8"?><beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-3.0.xsdhttp://www.springframework.org/schema/contexthttp://www.springframework.org/schema/context/spring-context-3.0.xsd"><!--wicket的web框架用-->  <beanid="consoleApplication"class="org.lsqt.content.web.wicket.ConsoleApplication"/><!--spring加载xml属性配置--><beanclass="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer"><propertyname="location"value="classpath:springConfig.properties"/></bean><!--common--><importresource="applicationContext-dataSource.xml"/><importresource="applicationContext-hibernate.xml"/><importresource="applicationContext-aop.xml"/><importresource="applicationContext-ehcache.xml"/><importresource="application-spring-mvc.xml"/><spanstyle="background-color:#E53333;"><context:annotation-config/><spanstyle="background-color:#E53333;">  <context:component-scanbase-package="org.lsqt"/></beans>不同myjar.jar由JDK的ApplicationClassLoader加载而你自己定义的classLoader去加载xx.jar那么在myjar中是找不到xx.jar中的东西的建议学习一下OSGi,对classLoader应用的典型好的我看看谢谢阿

爱吃鱼的程序员 2020-06-22 21:36:09 0 浏览量 回答数 0

问题

HBase运维基础——元数据逆向修复原理

pandacats 2019-12-18 15:08:35 3 浏览量 回答数 0

问题

常见问题排查步骤应该怎么做?

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