不显眼的江西,彩礼为什么会这么贵?

不显眼的江西,彩礼为什么会这么贵?

来源:金融八卦女(ID:baguanvpindao)

作者:yoyo

当二三十万的彩礼现金明晃晃地摆在桌子上后,女生自己对婚姻满不满意也就不那么重要了。因为家里不止她们一个女儿,底下的弟弟妹妹都在等着这笔彩礼钱延续今后的生活。


江西彩礼又刷出了新知识点,彩礼贷。
几天前,九江银行这一“彩礼贷”宣传海报触动各方神经。多家媒体刊文指出,银行公然宣传或推出最高贷款金额达到30万元的产品,是为“高价彩礼”、“天价彩礼”站台。
不显眼的江西,彩礼为什么会这么贵?
后经银行客服人员表示,九江银行并未推出“彩礼贷”产品,日后也没有上线的安排,(网传)图片只是宣传部门做的宣传。另有该行客户经理表示,“彩礼贷”实际上就是“快活贷-零花钱”产品,“贷了款,你可以用它买车,也能够用来做彩礼。”
魔幻的营销方式背后,有其社会背景,这也将江西天价彩礼问题再次推向了舆论声讨中心。
江西的彩礼钱也确实高。据称,2020年江西各地彩礼在8.8万-38.8万之间。
不显眼的江西,彩礼为什么会这么贵?
重灾区是抚州、上饶、赣州、南昌、景德镇、鹰潭,甚至各市都能凑桌斗地主,上饶丈母娘叫个30万,抚州来个35万,赣州再来个40万……江西小伙一众要不起。
不显眼的江西,彩礼为什么会这么贵?
至于为什么不显眼的江西彩礼这么高,还要从当地的社会发展寻找原因。

 

/ 1 /

这么多年以来,江西的存在感并不强。
论经济,它的排名和地理位置一样不前不后:2020年江西全省GDP为25691.5亿元,排在全国第15位。
论网红食品,江西米粉也比桂林米粉,柳州螺蛳粉知名度略逊一筹,甚至江西菜的辣也被直击人心的湘辣掩盖光芒,《滕王阁序》里的“物华天宝、人杰地灵”早就无法追上如今网红造势的脚步了……
反倒是高价彩礼,让江西非议纷纷。

不显眼的江西,彩礼为什么会这么贵?

图片来源:谷雨数据

彩礼是中国古代婚嫁习俗之一,又称订亲财礼、聘礼、聘财等。中国旧时婚姻的缔结,有在婚姻约定初步达成时互相赠送聘金、聘礼的习俗,这种聘金、聘礼俗称“彩礼”。
传到现代社会,彩礼已经成为了结婚双方里,男方是否对女方有足够诚意的重要表现之一。
天价彩礼的出现,究其根源就是僧多肉少。
谷雨数据统计称,江西、河南、海南、安徽等10个省份2001-2010出生人口性别比超过120,江西省甚至达到了130.77。江西的00后男女(没错,如今00后已经成为了江西相亲结婚主力)性别比高居全国第一,比排名第二的河南足足高出3.58个百分点。不要小瞧这3.58个百分点,社会整体性别比例的微小差距都会在底层加倍放大。
而据第六次人口普查统计,90后人口性别比最失衡的省份,也是江西,男女比例达到120.8∶100:
不显眼的江西,彩礼为什么会这么贵?
图片来源:吴晓波频道
所以,这种农村男女比例失衡的情况下,会出现高价彩礼有其社会背景。甚至有些地区,28.8万的彩礼是所有村民默认的统一标准。
纵观中国农村如今的人口留守情况,稍有点劳动能力的都在外出打工赚钱,当地人口外流,人口的减少更加剧了天价彩礼出现的频率。
江西的人口净流出总量,排在全国第四;按人口净流出比例,仍排第四,仅次于黑龙江、吉林和湖北。
不显眼的江西,彩礼为什么会这么贵?
来源:趣财经
男女比例失调,社会人口减少,造就了江西农村居高不下的彩礼金额。
而且在更封闭的农村地区,女孩被认为价值更低,她们没有继承权,婚后对亲生父母也没有赡养的责任。
在有儿子的家庭里,给儿子娶媳妇是家族的头等大事。由于很多农村地区还在恪守着父系继嗣的原则,这个过程通常依赖儿子完成,只有儿子的儿子才能接续家系。
不显眼的江西,彩礼为什么会这么贵?
纪录片《去远方》
所以,尽管江西彩礼的数额逐年攀升,甚至有的村庄人均年收入只有1.5万左右,但是面对动辄20几万的彩礼,舍下养老钱也要拿出手。
因此有银行以彩礼贷为噱头,大肆宣传,正是印证了这种乡土社会里的魔幻现实。

/ 2 /

然而在这场男女双方家庭的彩礼较量里,没有人会彻底赢。
按照江西地区的一般习俗,彩礼是给女方家庭的,但往往都是走个场面形式,最终这笔钱会返回到小两口的小家庭,这也是很多家庭愿意出彩礼的原因,总归没有流出自家的肥田。

但是在这笔钱回流之前,所有的事情都是面子事儿,那就是做给外人看的。

“彩礼攀比还是有的,我表弟亲身经历的,本来说好20万,因为女方的一个堂姐也最近结婚收了26.6万,所以她家改口要了28.8万,然后就吹了。”

小童是江西赣州地区的,在小童眼里,彩礼是一个让他一听就冒火的词。他对于赣州彩礼的总结:
一是农村地区比城市地区严重,二是女方有没结婚的兄弟比独生女儿严重,三是部分地区的习俗导致比所有地区都更重(比如于都以前按女儿的体重照斤称算彩礼)。
话里话外,小童对于这种现实状况感到的是深深无力,“天下苦彩礼久矣”是他作为一名江西男子最深的感触。
在江西农村当地,很多女孩子被认为读书没有用处,高中毕业已经是比较高的学历,家人会催促着赶紧打工赚钱。而很多十几岁的女生初中毕业之后就不再上学,回到父母身边呆上几年,待有媒人上门提亲时,便开始进入了人生下一个阶段。
在这个过程里,两个小儿女从见面到两家确定关系只需要四天的时间,第一天男方瞪目,第二天两个年轻人出去玩一天,互相熟悉一下,等到第三天或者第四天,如果女方父母满意,男方则就登门见礼,正式提亲。
不显眼的江西,彩礼为什么会这么贵?
纪录片《去远方》
如果你问女生自己满不满意时,当二三十万的彩礼现金明晃晃地摆在桌子上后,女生自己满不满意也就不那么重要了。
因为家里不止她们一个女儿,底下的弟弟妹妹都在等着这笔彩礼钱延续今后的生活。
不显眼的江西,彩礼为什么会这么贵?
不要和她们说什么如女孩子要独立自主、摆脱原生家庭的裹挟,在这片广袤的田野文化里,那些高速发展流动的信息并没有传到这些乡村里。那些现代化的发展,工业化的进程,与他们的生活也还没有丝丝入扣的联系。
而且只要在中国农村里一直延续着父系继嗣的原则,这种形式的重男轻女现象就无法避免。
有很多人说,这种天价彩礼无异于卖女儿,但是在人口净流入减少的情况下,娘家减少一口人,就相当于少了一个劳动力。
在农村,高价彩礼往往也是男方对于女方家庭的一种补偿,你可以理解为买断劳动力。
虽然天价彩礼多发生在农村地区,但是城市的推波助澜作用也有迹可循。其中最明显的助推手就是房价。
相对于江西的工资水平,江西的房价是很高的。
省会南昌动辄两三万,副中心赣州、九江普遍过万,就连很多刚脱贫的贫困县,也是七八千一平。比如于都县,平均工资3000左右,房价就要6000-8000元/平方米,好一点的小区,房价过万。
不显眼的江西,彩礼为什么会这么贵?
图片来源:安居客
还有赣州市区,平均工资4000元左右,没有互联网、高科技等行业,大部分人在工厂上班,或者做销售、餐饮、美容等行业。 中心区的房价在1.5万左右,而且还在上涨。
很多在城市打拼的农村男青年买不起房,又要回乡,进一步推高了彩礼价格。
毕竟对于国人来说,结婚没有房子,等于裸婚。与其如此背着30年的房贷,常年入不敷出,不如全家拿出20几万,一次性解决房子、婚姻这一大事来得划算。

/ 3 /

尽管在近年来不断爆出天价彩礼的新闻下,江西各地政府出台了一系列限制彩礼价格的措施,但是真正落到实处时,仍然任重道远。
3月17日,《南方日报》刊文指出,众所周知,“天价彩礼”属于社会陋习,追求的是面子和排场,不但不能给青年人“贷”来一个幸福的婚姻,相反大大加重了青年结婚负担,成为普通家庭返贫、致贫的重要原因,饱受社会诟病。
就在去年,民政部印发了《关于开展婚俗改革试点工作的指导意见》,开展对天价彩礼、铺张浪费、低俗婚闹、随礼攀比等不正之风的整治。
不显眼的江西,彩礼为什么会这么贵?
今年元旦起实施的《民法典》也明确规定,“禁止借婚姻索取财物”。
但是在乡土法则最为通用的农村,一旦遇到与法律条文的碰撞时,法律往往显得有些苍白。
就在九江银行这波“营销门”的第二天,说巧不巧,《人民日报》也对天价彩礼作出评论:
天价彩礼是多种因素共同作用的结果。从文化层面来看,“彩礼越高面子越大”的攀比心理加剧了天价彩礼现象蔓延。从治理层面来看,有的地方虽认识到天价彩礼的危害性,但没有引起足够的重视,在推动工作上没有思路,缺乏深入细致的思想引导和务实管用的治理措施。
天价彩礼的治理需要多措并举、久久为功。应当采取多种方式引导群众自觉抵制不良风气,让爱情回归本心,让婚姻回归本质。
《 人民日报 》( 2021年03月17日 第 07 版)

转自:

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

 升学政策、择校分析、热点事件
点击蓝字关注我们

3月16日,上海市教委公布了《上海市高中阶段学校招生录取改革实施办法》(以下简称《实施办法》)。《实施办法》一出引起家长们的热议,尤其是关于名额分配这项~

一是委属市实验性示范性高中名额分配招生计划占其招生计划总数的65%;

二是区属市实验性示范性高中的名额分配招生计划占其招生计划总数的50-65%。

很多家长可能对哪些高中算委属高中?

哪些又算区属市实验性示范性高中?

不是很清楚!

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

今天,小编整理出上海69所市重点高中

带各位家长图解这些高中是怎么分布

我们一起来看看吧~

上海69所市重点高中汇总表

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

徐汇区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

杨浦区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

黄浦区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

浦东新区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

长宁区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

普陀区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

静安区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

虹口区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

闵行区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

宝山区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

松江区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

青浦区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

嘉定区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

金山区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

奉贤区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

崇明区

2021上海新中考之名额分配,图解16区69所市重点高中,哪区最占优势?

以上就是全市16个区69所市重点高中分布情况,建议大家转发收藏哦~

转自:https://mp.weixin.qq.com/s/u42_Sm7aWTQCacUNnjY6rg

突发!学区房,崩了。。。

自由和机会、收入和财富、自尊的社会基础——

都要平等地分配,除非对其中一种价值

或所有价值的一种不平等

分配合乎每个人的利益。

——罗尔斯《正义论》

一夜变天!
楼市食物链学区房,崩了!
近日,网传上海教改政策公布后,上海知名老破小+双学位小区—梅园开始暴跌。
有网友称新政公布前房产评估430万,新政后房价变成了370万,一夜下降了60万。
突发!学区房,崩了。。。
乐居网房产经纪人也爆料称,同样在梅园二街坊,一套32㎡的学区房在新政前挂牌720万,新政后立刻修改到699万
突发!学区房,崩了。。。
上海链家的网站上,几天前刚挂网的梅园三街坊的一套近47平米的房子,挂牌价825万,平均18万元一平。
突发!学区房,崩了。。。而多个在春节之前就挂网的梅园三街坊一套近30平米的房子,挂牌价728万,平均25万元一平米。
突发!学区房,崩了。。。微博上一位认证上海泽乐地产的顾问也表示,该学区房以前价格疯涨一房难求,目前逆转了。大量房源正在上架中……
突发!学区房,崩了。。。
果然,买房就是买预期,上海新政是从今年9月1日开始实施,现在靴子还没正式落地,高价学区房的地基就已经塌陷了。

对于学区房炒房客来说,此前没有任何消息泄露,这下高价炒作的学区房要彻底砸在炒房客手里了。

争渡争渡,惊起一滩鸥鹭!
有人可能要问,上海搞了什么神政策,杀伤力这么强悍?
如果老粉丝,下面这一段可以忽略。如果是新粉丝,那么,我再给脑补一下。
故事的发生是这样的:3月16日,上海教委发布了中考改革的新政,这项政策,犹如突然释放一枚核弹,精准引爆这两年被热炒的市中心学区房!
上海宣布:从2022年开始,上海市优质高中将拿出其招生总计划数的65%(委属)、50%-65%(区属),来进行“名额分配综合评价录取招生计划”,剩下的名额则通过高中自主招生和统一考试招生来录取学生。
突发!学区房,崩了。。。
所谓“名额分配”,即把优质高中(即四大八校)的招生名额,根据科学、均衡的分配方法,分配到上海的每一所不挑生源的初中。
突发!学区房,崩了。。。
有人或许要问,不就是一个通知吗,怎么影响力这么大,让这么多业主魂飞魄散?!
说到底,就是因为通知中这个关键词:“分配到区”。
许多人只知道从上海考上985更容易,却不知道上海“初升高”市场异常残暴,50%左右的考生根本进不了高中,更别说四校八大了。
而头部高中(四校八大)又几乎垄断了上海所有清北复交名额。
高中竞争激烈,为了维持名校升学率,顶部高中最简单的方式就是向头部初中定向招“尖子生”,俗称“掐尖”。
这样一来,从“牛小-牛初-牛高”利益通道形成,牢不可破。
现在好了,必须把四大八校的招生名额让出来,让上海所有普通学校都有机会上头部高中,注意,是强制性的哦。
突发!学区房,崩了。。。
“全覆盖”、“所有不择生源的学校”,意味着顶级公办初中和不入流的“菜中”,站在了同一起跑线——名额分配面前。
而决定名额数量的,不再是区统考成绩和生源口碑,也不再是初中是否属于同集团高中,而是学生人数。
这也就意味着,优质初中考上优质高中的学生数量或将减少,而普通初中考上优质高中的学生数量将增加。
突发!学区房,崩了。。。
这就意味着,原来在一所牛初上学可以直接进牛高,但现在概率大幅下滑。
小明,小华和小红,一个在徐汇区,一个在青浦区,一个在崇明区,他们的前途一样光明。
对于那种成绩一般就靠学区房走捷径的学生来说,这下要哭惨了,此政策一经落地,相信一线市区学区房的稀缺性也就没那么强了。

突发!学区房,崩了。。。

哭的更惨的是刚接盘市区老破小,用来挂户口的那些学区房接盘侠们,不出意料的话,击鼓传花就要在他们手里停住了。
原来的打算是,孩子的学区房名额一用完,就能转手卖出,那就是把房子当金融产品,强行高位接盘。

可是,新政实施后,高价买入的所谓学区房,上名校的几率,不增反降,有些热门学区一下子就直降到原来的1/3左右。更有甚者,可能还不如同区或郊区的菜中,那谁还愿意傻乎乎地高价接盘呀?

所以,他们现在正在肝肠寸断。
好像怕仅仅一个“分配到区”的新政还不够给力,3月19日下午,上海市房地产经纪行业协会,又发起自律倡议,倡议房地产中介不炒作学区房概念。
什么“学区房”、“升学率”、“对口”、“名额未用”等用语,统统不允许在链家、太平洋、中原、我爱我等房地产平台企业推介中出现。
是的,你没看错,就是不允许你们搞焦虑营销,乱忽悠!
诺,像下图这种一切为了“小祖宗”的煽情广告,以后统统不允许再出现了。
突发!学区房,崩了。。。
如此一来,不仅郊区的家长没必要再往市区扎堆,就算你想扎推,也几乎两眼一抹黑:哪个房子是学区房?拜托,我也不知道啊!
市区家长甚至还可能还会往郊区搬迁,毕竟郊区不仅上名校的几率高,环境好,房价还低….
毕竟,如果不是为了上名校,谁愿意一家人挤在市区几十平的老破小里?!
学区房的雷,终于是爆了!!
学区房价格之高,曾经让人瞠目结舌!
这可谓教育和楼市共同生下的一个怪胎,这场走向歪路的关于孩子起跑线的竞争,让很多父母为之焦虑!
上海学区房本轮上涨,从2020年5月开始发酵,并在10月份开始猛涨,5个月不到,涨幅高达43%。
最疯狂莫过于浦东梅园街道,建成于1985年的老破小由于对口大名鼎鼎的“建平西”,其二手房价每年入学季之前都会迎来一波上涨,从未出现跌势。
突发!学区房,崩了。。。
这一切,实在太过疯狂了,而从历史看,疯狂的代价,无一例外,都将是一地鸡毛!
果然,现在,上海市已经开始动手了,其他学区房还远吗?
有人或许会说:无所谓,不就是上海这么搞嘛!子弹打到我们这里,还得飞好一会呢!
亲,别忘了,上海可是全国楼市的风向标,具有很大的样板作用。上海突然出手,打响公平教育第一枪,必将引发全国一片效仿的风潮。
果然,现在,深圳的大动作也开始了。
3月16日,深圳首次提出“全区试点大学区制”,在民治街道小一和初一各自选取5所学校,纳入到大学区招生学校中,狙击高价学位房。
北京、杭州的改革,也正胎动腹中,一场在全国范围内“告别学区房”的风暴即将到来。
未来,如果其他城市一致跟随,学区房将大大降温,以往市场炒翻天的“天价地下室”、“过道房”将彻底失去土壤。
是的,今天的上海无疑给所有人吃了一颗定心丸,让大家看到了希望:
只要中央政府对抑制房价炒作的决心不变,则淡化学区房的政策必将成为席卷全国的大趋势。
或许,我们真的要跟学区房说再见了!

 

这曾是多少中国家长心中的“宝地”!
曾有一个段子,活灵活现地写出学区房在家长心目中的地位:芯片靠研发,研发靠人才,人才靠教育,教育靠学区房,多少父母砸锅卖铁,也要买学区房,把孩子送去好学校。
现在,这股天价学区房的热潮,反映的是整个社会疯狂的“鸡娃”风气,是当今中产阶层过度的焦虑。
突发!学区房,崩了。。。
但其实,随着移动互联网和人工智能的到来,学区房及其好学校的功能,被望子成龙的父母们,过分高估了!
现代教育的起源,是17世纪的德国,其教育是为大机器工业服务的,他们要培养的是整齐划一的人,主要是为培养劳工服务。学生的个性和成长路线被框定起来成长,然后成为“人才”。
然而,智能时代,可以确定不需要太多流水线上的工人和中层白领;未来教育应该是探索而不是应试。未来教育最重要的是艺术的感觉、充沛的情感、科学的思想。
未来三十年是最佳的超车时代,如果我们继续以前的教学方法,对我们的孩子进行记、背、算这些东西,不让孩子去体验,不让他们去尝试琴棋书画,我可以保证:三十年后孩子们找不到工作。
一场教育的革命正在爆发!因为,孩子们最珍贵的禀赋,或许更多不是来自学校,而是来自于原生家庭;最优质的教育,从来不是来自于老师,而是父母的言传身教!
也就是说,父母的言传身教,才是真正影响孩子一生的真正关键。他们在生活的每时每刻,甚至不在场的时候,也是在润物无声地传授着、教育着。
一个人在不同的高度,可以看到不同的风景:你先看见草地,接着看见山丘,然后看见山丘后的河流,再飞高,远方的高山背后,可能是沙漠或大海。
其实,作为父母,我们看到的也许是真相,也许是幻象,我们的焦虑,一定意义上,也是失真的。
人类的大脑,总是趋向于放大危险,而世界本身并没有像我们大脑呈现的那样危机四伏,孩子的教育也是,一时的考分,并不会决定他的一生。
望子成龙,往往只是我们焦虑情绪的投射,其实,如果真要让孩子人生幸福、人格健全,我们更应该做的,是身体力行,去一个人格健全的人,去舒展自己,释放自我,获得幸福。
我们应当开始追求富有品味的生活。我们应该用一颗沉静的心,去领略万事万物,去欣赏那些别具匠心的极致产品,去领受渗透着温情和美的品味生活。
不要把所有的价值都附着在孩子身上,盲目投射焦虑,我们自己要盛开得更美丽,更从容,更优雅!
很多人也许听过一个故事:在一趟航班上,有个妈妈给飞机上每个人发了一份小礼物,里面装了耳塞和糖果,还写了一段话:
“我是来自宁波的Wendy,我刚刚一岁半…独自带我的妈妈担心我的哭闹会打扰到您,这里有耳塞和小糖果,希望能减轻你的困扰……
然而,宝宝全程却很乖,完全没有哭闹。
这样的家庭教育,就算十个学区房也换不来!

转自:https://mp.weixin.qq.com/s/5WVfmouStpFwg26QnuDCpA

适合小白的 Nginx 学习手册

 
Nginx 是一个高性能的 HTTP 和反向代理服务器,特点是占用内存少,并发能力强,事实上 Nginx 的并发能力确实在同类型的网页服务器中表现较好。

适合小白的 Nginx 学习手册 ( 收藏了 )

Nginx 专为性能优化而开发,性能是其最重要的要求,十分注重效率,有报告 Nginx 能支持高达 50000 个并发连接数。

01

Nginx 知识网结构图

Nginx 的知识网结构图如下:

适合小白的 Nginx 学习手册 ( 收藏了 )

02

反向代理

正向代理:局域网中的电脑用户想要直接访问网络是不可行的,只能通过代理服务器来访问,这种代理服务就被称为正向代理。
适合小白的 Nginx 学习手册 ( 收藏了 )
反向代理:客户端无法感知代理,因为客户端访问网络不需要配置,只要把请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据,然后再返回到客户端。
此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器地址,隐藏了真实服务器 IP 地址。
适合小白的 Nginx 学习手册 ( 收藏了 )
03
负载均衡
客户端发送多个请求到服务器,服务器处理请求,有一些可能要与数据库进行交互,服务器处理完毕之后,再将结果返回给客户端。
普通请求和响应过程如下图:
适合小白的 Nginx 学习手册 ( 收藏了 )
但是随着信息数量增长,访问量和数据量飞速增长,普通架构无法满足现在的需求。
我们首先想到的是升级服务器配置,可以由于摩尔定律的日益失效,单纯从硬件提升性能已经逐渐不可取了,怎么解决这种需求呢?
我们可以增加服务器的数量,构建集群,将请求分发到各个服务器上,将原来请求集中到单个服务器的情况改为请求分发到多个服务器,也就是我们说的负载均衡。
图解负载均衡:
适合小白的 Nginx 学习手册 ( 收藏了 )
假设有 15 个请求发送到代理服务器,那么由代理服务器根据服务器数量,平均分配,每个服务器处理 5 个请求,这个过程就叫做负载均衡。

04

动静分离

为了加快网站的解析速度,可以把动态页面和静态页面交给不同的服务器来解析,加快解析的速度,降低由单个服务器的压力。
动静分离之前的状态:
适合小白的 Nginx 学习手册 ( 收藏了 )
动静分离之后:
适合小白的 Nginx 学习手册 ( 收藏了 )
06
Nginx安装

Nginx 如何在 Linux 安装

参考链接:
https://blog.csdn.net/yujing1314/article/details/97267369

Nginx 常用命令

查看版本:
./nginx -v
启动:
./nginx
关闭(有两种方式,推荐使用 ./nginx -s quit):
 ./nginx -s stop
 ./nginx -s quit
重新加载 Nginx 配置:
./nginx -s reload

Nginx 的配置文件

配置文件分三部分组成:
①全局块
从配置文件开始到 events 块之间,主要是设置一些影响 Nginx 服务器整体运行的配置指令。
并发处理服务的配置,值越大,可以支持的并发处理量越多,但是会受到硬件、软件等设备的制约。
适合小白的 Nginx 学习手册 ( 收藏了 )
②events 块
影响 Nginx 服务器与用户的网络连接,常用的设置包括是否开启对多 workprocess 下的网络连接进行序列化,是否允许同时接收多个网络连接等等。
支持的最大连接数:
适合小白的 Nginx 学习手册 ( 收藏了 )
③HTTP 块
诸如反向代理和负载均衡都在此配置。
location[ = | ~ | ~* | ^~] url{

}
location 指令说明,该语法用来匹配 url,语法如上
  • =:用于不含正则表达式的 url 前,要求字符串与 url 严格匹配,匹配成功就停止向下搜索并处理请求。
  • ~:用于表示 url 包含正则表达式,并且区分大小写。
  • ~*:用于表示 url 包含正则表达式,并且不区分大小写。
  • ^~:用于不含正则表达式的 url 前,要求 Nginx 服务器找到表示 url 和字符串匹配度最高的 location 后,立即使用此 location 处理请求,而不再匹配。
  • 如果有 url 包含正则表达式,不需要有 ~ 开头标识。

07

反向代理实战

①配置反向代理

目的:在浏览器地址栏输入地址 www.123.com 跳转 Linux 系统 Tomcat 主页面。
②具体实现
先配置 Tomcat,因为比较简单,此处不再赘叙,并在 Windows 访问:
适合小白的 Nginx 学习手册 ( 收藏了 )
具体流程如下图:
适合小白的 Nginx 学习手册 ( 收藏了 )
修改之前:
适合小白的 Nginx 学习手册 ( 收藏了 )
配置如下:
适合小白的 Nginx 学习手册 ( 收藏了 )
再次访问:
适合小白的 Nginx 学习手册 ( 收藏了 )
③反向代理 2
目标:
  • 访问 http://192.168.25.132:9001/edu/ 直接跳转到 192.168.25.132:8080
  • 访问 http://192.168.25.132:9001/vod/ 直接跳转到 192.168.25.132:8081
准备:配置两个 Tomcat,端口分别为 8080 和 8081,都可以访问,端口修改配置文件即可。
适合小白的 Nginx 学习手册 ( 收藏了 )
适合小白的 Nginx 学习手册 ( 收藏了 )
新建文件内容分别添加 8080!!!和 8081!!!
适合小白的 Nginx 学习手册 ( 收藏了 )
适合小白的 Nginx 学习手册 ( 收藏了 )
响应如下图:
适合小白的 Nginx 学习手册 ( 收藏了 )
适合小白的 Nginx 学习手册 ( 收藏了 )
具体配置如下:
适合小白的 Nginx 学习手册 ( 收藏了 )
重新加载 Nginx:
./nginx -s reload
访问:
适合小白的 Nginx 学习手册 ( 收藏了 )
适合小白的 Nginx 学习手册 ( 收藏了 )
实现了同一个端口代理,通过 edu 和 vod 路径的切换显示不同的页面。
反向代理小结
第一个例子:浏览器访问 www.123.com,由 host 文件解析出服务器 ip 地址 192.168.25.132 www.123.com。
然后默认访问 80 端口,而通过 Nginx 监听 80 端口代理到本地的 8080 端口上,从而实现了访问 www.123.com,最终转发到 tomcat 8080 上去。
第二个例子:
  • 访问 http://192.168.25.132:9001/edu/ 直接跳转到 192.168.25.132:8080
  • 访问 http://192.168.25.132:9001/vod/ 直接跳转到 192.168.25.132:8081
实际上就是通过 Nginx 监听 9001 端口,然后通过正则表达式选择转发到 8080 还是 8081 的 Tomcat 上去。
08
负载均衡实战
①修改 nginx.conf,如下图:
适合小白的 Nginx 学习手册 ( 收藏了 )
适合小白的 Nginx 学习手册 ( 收藏了 )
②重启 Nginx:
./nginx -s reload
③在 8081 的 Tomcat 的 webapps 文件夹下新建 edu 文件夹和 a.html 文件,填写内容为 8081!!!!
④在地址栏回车,就会分发到不同的 Tomcat 服务器上:
适合小白的 Nginx 学习手册 ( 收藏了 )
适合小白的 Nginx 学习手册 ( 收藏了 )
负载均衡方式如下:
  • 轮询(默认)。
  • weight,代表权,权越高优先级越高。
  • fair,按后端服务器的响应时间来分配请求,相应时间短的优先分配
  • ip_hash,每个请求按照访问 ip 的 hash 结果分配,这样每一个访客固定的访问一个后端服务器,可以解决 Session 的问题。

适合小白的 Nginx 学习手册 ( 收藏了 )

适合小白的 Nginx 学习手册 ( 收藏了 )

适合小白的 Nginx 学习手册 ( 收藏了 )

 

09
动静分离实战

什么是动静分离?把动态请求和静态请求分开,不是讲动态页面和静态页面物理分离,可以理解为 Nginx 处理静态页面,Tomcat 处理动态页面。

动静分离大致分为两种:
  • 纯粹将静态文件独立成单独域名放在独立的服务器上,也是目前主流方案。
  • 将动态跟静态文件混合在一起发布,通过 Nginx 分开。

动静分离图析:

适合小白的 Nginx 学习手册 ( 收藏了 )
实战准备,准备静态文件:
适合小白的 Nginx 学习手册 ( 收藏了 )
适合小白的 Nginx 学习手册 ( 收藏了 )
配置 Nginx,如下图:
适合小白的 Nginx 学习手册 ( 收藏了 )

Nginx 高可用

如果 Nginx 出现问题:
适合小白的 Nginx 学习手册 ( 收藏了 )
解决办法:
适合小白的 Nginx 学习手册 ( 收藏了 )
前期准备:
  • 两台 Nginx 服务器
  • 安装 Keepalived
  • 虚拟 ip

安装 Keepalived:

[root@192 usr]yum install keepalived -y
[root@192 usr]rpm -q -a keepalived
keepalived-1.3.5-16.el7.x86_64
修改配置文件:
[root@192 keepalived]# cd /etc/keepalived
[root@192 keepalived]# vi keepalived.conf
分别将如下配置文件复制粘贴,覆盖掉 keepalived.conf,虚拟 ip 为 192.168.25.50。
对应主机 ip 需要修改的是:
  • smtp_server 192.168.25.147(主)smtp_server 192.168.25.147(备)
  • state MASTER(主) state BACKUP
global_defs {
   notification_email {
     acassen@firewall.loc
     failover@firewall.loc
     sysadmin@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc
   smtp_server 192.168.25.147
   smtp_connect_timeout 30
   router_id LVS_DEVEL # 访问的主机地址
}

vrrp_script chk_nginx {
  script “/usr/local/src/nginx_check.sh”  # 检测文件的地址
  interval 2   # 检测脚本执行的间隔
  weight 2   # 权重
}

vrrp_instance VI_1 {
    state BACKUP    # 主机MASTER、备机BACKUP    
    interface ens33   # 网卡
    virtual_router_id 51 # 同一组需一致
    priority 90  # 访问优先级,主机值较大,备机较小
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.25.50  # 虚拟ip
    }
}
启动代码如下:
[root@192 sbin]# systemctl start keepalived.service
适合小白的 Nginx 学习手册 ( 收藏了 )
访问虚拟 ip 成功:
适合小白的 Nginx 学习手册 ( 收藏了 )
关闭主机 147 的 Nginx 和 Keepalived,发现仍然可以访问。

原理解析

适合小白的 Nginx 学习手册 ( 收藏了 )
如下图,就是启动了一个 master,一个 worker,master 是管理员,worker是具体工作的进程。
适合小白的 Nginx 学习手册 ( 收藏了 )
worker 如何工作?如下图:
适合小白的 Nginx 学习手册 ( 收藏了 )
小结
worker 数应该和 CPU 数相等;一个 master 多个 worker 可以使用热部署,同时 worker 是独立的,一个挂了不会影响其他的。

全栈开发者社区

来源:https://reurl.cc/5oOQ3R

转自:https://mp.weixin.qq.com/s/4zGk7ulcdKcu7loyoFFE3g

发封邮件就能关机?用python实现远程控制电脑

一、前言

大家好,欢迎来到 Crossin的编程教室 !

不知道你有没有遇到类似的情况:眼看要出门了,结果一个程序要运行很久才能结束,导致无法立刻关机。这种时候就想,如果可以远程查看电脑运行状态甚至控制关机就好了。

类似这样的“远控”软件有不少,一般需要在电脑端和控制端各安装一个软件,即可实现远程监控和操作。

其实我们也可以用 Python 做一个简便的小工具,实现远程控制电脑。当然,我们需要的操作十分简单:要能通过邮件和电脑进行通讯,让电脑以截图的方式为我们显示程序当前运行的状态;还要可以通过邮件发送一些预设好的指令,比如执行某个程序,或者远程关机等等。

因为是通过邮件,所以手机上无需任何开发环境和特殊App,只要能联网发送Email就可以。

下面我们就来分享下这样一个“邮件远控”工具的Python实现。

二、使用 yagmail 进行邮件发送

使用 yagmail 发邮件非常简单,我们首先需要安装两个模块:

pip install yagmailpip install keyring

2.1、发送一个简单的邮件

我们用 yagmail 来发一封简单的邮件试试:

import yagmailimport keyring
sender = '发件邮箱'password = '发件人密码'receiver = '收件邮箱'
# 注册yagmail.register(sender, password)
# 用 SMTP 服务器发邮件yag = yagmail.SMTP(user=sender, host='smtp.163.com')
# 设置邮件的内容contents = ['Do not go gentle into that good night!']
# 发送邮件yag.send(receiver, '邮件主题', contents=contents)

这里密码可以使用真实密码,也可以使用授权码。授权码的获得需要到各个邮件的网页获取,这里以网易邮箱为例:

发封邮件就能关机?用python实现远程控制电脑

我们进入网页版邮箱,依次点击 1、2,进入如下页面:

发封邮件就能关机?用python实现远程控制电脑

点击开启,然后按照指引获取授权码即可。

在连接邮箱服务器的时候,我们设置的一个 host,这个同样需要在邮箱网页中获取。其中 163 的邮箱地址为 smtp.163.com,QQ 邮箱服务器地址为 smtp.qq.com,其它邮箱的可以自己查找一下。

邮箱内容是一个列表,我们现在是放入了一句话。

在调用 send 方法发送邮件时,我们需要传入几个参数。第一个是收件人,第二个是邮件的主题,第三个就是邮件的内容了。邮件内容我们传入开始的内容列表。大家可以使用自己的邮箱测试一下。

2.2、发送附件

yagmail 非常智能,我们不需要像原始的 email 模块一样,先将附件上传到邮箱服务器,然后再发给收件人。yagmail 会自动识别内容中的资源文件,然后自动上传:

import yagmailimport keyring
sender = '发件邮箱'password = '发件人密码'receiver = '收件邮箱'
# 注册yagmail.register(sender, password)
# 用 SMTP 服务器发邮件yag = yagmail.SMTP(user=sender, host='smtp.163.com')
# 设置邮件的内容contents = ['im.jpg']
# 发送邮件yag.send(receiver, '邮件主题', contents=contents)

其中 im.jpg 是我本地的一张图片,在发送的时候 yagmail 会自动识别,然后发送出去。我们没做什么修改,就完成了附件的发送。

我们也可以直接发送带有图片的邮件,而不是以附件的形式发送:

import yagmailimport keyring
sender = '发件邮箱'password = '发件人密码'receiver = '收件邮箱'
# 注册yagmail.register(sender, password)
yag = yagmail.SMTP(user=sender, host='smtp.163.com')contents = [    '这是一张图片',    yagmail.inline('im.jpg')]yag.send(receiver, '邮件主题', contents=contents)

我们只要用 yagmail.inline 包含图片路径即可。不过需要注意,发送的内容不能单是一张图片。

三、邮件读取

邮件的读取需要使用到 imbox 模块。我们需要先使用 keyring 模块读取密码,keyring 可以读取到在 yagmail 中注册了的邮箱密码:

import yagmailimport keyringfrom imbox import Imbox
sender = '你的邮箱'# 获取邮箱密码password = keyring.get_password(sender)# 读取邮箱邮件with Imbox('imap.163.com', sender, password, ssl=True) as imbox:    # 读取所有未读邮件    all_msg = imbox.messages(unread=True)

Imbox 对象就是我们的邮箱对象,里面包含了所有邮箱信息。我们调用 messages 方法就可以获取所有邮件,如果我们将 unread 设置为 True,则表示读取未读邮件。获取了所有邮件,我们就可以查看更多信息了:

import yagmailimport keyringfrom imbox import Imbox
sender = '你的邮箱'# 获取邮箱密码password = keyring.get_password(sender)# 读取邮箱邮件with Imbox('imap.163.com', sender, password, ssl=True) as imbox:    # 读取所有未读邮件    all_msg = imbox.messages(unread=True)    # 遍历邮件    for uid, message in all_msg:            # 输出邮件的主题            print(message.subject)            # 标记已读            imbox.mark_seen(uid)            # 获取邮件的文本内容            msg = message.body['plain']

我们要实现控制电脑就需要一直读取,我们可以使用 schedule 模块设置定时任务:

import timeimport schedule
def func():    print('test')
schedule.every(2).seconds.do(func)while True:    schedule.run_pending()    time.sleep(1)

这样的话,可以每两秒执行一次 func 函数。

四、开发电脑控制工具

我们定义一个 ComputerController 类,用于控制电脑。该类的最基本方法就发邮件和收邮件:

import timeimport yagmailimport keyringimport schedulefrom imbox import Imbox

class ComputerController():
    TIME_SPACE = 10
    SMTP_163 = 'smtp.163.com'
    SMTP_QQ = 'smtp.qq.com'
    def __init__(self, user, receiver):        self.user = user        self.receiver = receiver        # 注册        yagmail.register(self.user, '你的密码')
    def send_main(self, msg):        """发邮件"""        yag = yagmail.SMTP(user=self.user, host=self.SMTP_163)        contents = [            msg        ]        yag.send(self.receiver, '来自电脑的邮件', contents=contents)

    def receive_mail(self):        """收邮件"""
        # 读取密码        password = keyring.get_password('yagmail', self.user)        with Imbox('imap.163.com', 'sockwz@163.com', password, ssl=True) as imbox:            all_msg = imbox.messages(unread=True)            for uid, message in all_msg:                if '110' == message.subject:                    # 标记已读                    imbox.mark_seen(uid)                    msg = message.body['plain']                    print(msg)
    def run_controller(self):          # 定时读取邮件        schedule.every(self.TIME_SPACE).seconds.do(controller.receive_mail)        while True:            schedule.run_pending()            time.sleep(self.TIME_SPACE)

我们只需要创建这个类就可以了:

if __name__ == '__main__':    controller = ComputerController('发件邮箱', '收件邮箱')    controller.run_controller()

我们需要传入收件邮箱和发件邮箱,另外还需要在 init 方法中,修改密码即可。

五、实现一些预设功能

下面我们实现一些小功能。

5.1、截图

from PIL import ImageGrabdef grab_windows(self):    im = ImageGrab.grab()    im.save('status.jpg')

使用 Pillow 模块需要先安装:

pip install pillow

5.2、关机

import osdef shut_down(self):    """关机"""    os.system('shutdown /s /t 0')

这个是通用的两个功能。

另外我们可以使用 pynput 模块控制键盘,进行一些操作。这个需要根据自己电脑的情况操作,比如我使用 PyCharm 运行程序的快捷键是 shift+f10,所以可以使用下列代码运行程序:

def run_program(self):    """运行程序"""    with self.kb.pressed(Key.shift):        self.kb.press(Key.f10)        self.kb.release(Key.f10)

类似的方法,大家可以自己定制一些操作。

整个程序完整代码如下:

import osimport timeimport yagmailimport keyringimport schedulefrom imbox import Imboxfrom PIL import ImageGrabfrom pynput.keyboard import *
class ComputerController():
    TIME_SPACE = 10    SMTP_163 = 'smtp.163.com'    SMTP_QQ = 'smtp.qq.com'    kb = Controller()
    def __init__(self, user, receiver):        self.user = user        self.receiver = receiver        # 注册        yagmail.register(self.user, '授权码或密码')
    def send_main(self, msg):        """发邮件"""        yag = yagmail.SMTP(user=self.user, host=self.SMTP_163)        contents = [            msg        ]        yag.send(self.receiver, '来自电脑的邮件', contents=contents)
    def receive_mail(self):        """收邮件"""
        # 读取密码        password = keyring.get_password('yagmail', self.user)        with Imbox('imap.163.com', 'sockwz@163.com', password, ssl=True) as imbox:            all_msg = imbox.messages(unread=True)            for uid, message in all_msg:                if '110' == message.subject:                    # 标记已读                    imbox.mark_seen(uid)                    msg = message.body['plain']                    if msg[0].__contains__('截图'):                        # 截图                        self.grab_windows()                        # 发送截图                        self.send_main('status.jpg')                    if msg[0].__contains__('重启'):                        self.restart_server()                        time.sleep(3)                        self.grab_windows()                        self.send_main('status.jpg')                    if msg[0].__contains__('关机'):                        self.shut_down()
    def grab_windows(self):        im = ImageGrab.grab()        im.save('status.jpg')
    def restart_server(self):        time.sleep(3)        os.system('shutdown')        time.sleep(3)        os.system('startup')
    def run_program(self):        """运行程序"""        with self.kb.pressed(Key.shift):            self.kb.press(Key.f10)            self.kb.release(Key.f10)
    def shut_down(self):        """关机"""        os.system('shutdown /s /t 0')
    def run_controller(self):        schedule.every(self.TIME_SPACE).seconds.do(controller.receive_mail)        while True:            schedule.run_pending()            time.sleep(self.TIME_SPACE)

if __name__ == '__main__':    controller = ComputerController('发件邮箱', '收件邮箱')    controller.run_controller(

这个代码里我们设定,在读取邮件时只读取主题为“110”的邮件,这样可以避免干扰邮件。所以我们在发送邮件时需要将主题设置为“110”,而邮件内容则是一些关键词。比如“截图”就是截图操作,“关机”就是关机操作。这个可以自己定义。

以上便实现了一个通过邮件向远程电脑发送操作指令的工具。大家可以在此基础上进行改进和扩展。欢迎把你的想法分享在留言中。

如果文章对你有帮助,欢迎转发/点赞/收藏~

作者:ZackSock
来源:建文件夹X

转自:https://mp.weixin.qq.com/s/Iuaxx7rV0MPt7EmCzxlvhw