顶部
首页

做可能有效的最简单的事情

做可能有效的最简单的事情

更新时间: 浏览次数: 258

在软件设计领域,追求简洁性和实用性是一种重要的设计理念。本文探讨了在设计软件系统时,如何通过做最简单的事情来实现高效和可维护的系统。

在设计软件系统时,尽可能做最简单的事情。

令人惊讶的是,你对这条建议的接受程度如此之高。我真心觉得你可以一直这样做。你可以用这种方法来修复错误、维护现有系统以及构建新系统。

很多工程师在设计时,总是试图设想一个“理想”的系统:一个结构合理、几乎无限可扩展、分布优雅的系统等等。我认为这是完全错误的软件设计方法。相反,应该花时间深入了解现有系统,然后尽可能地做最简单的事情。

简单可能会让人失望

系统设计需要熟练掌握各种工具:应用服务器、代理、数据库、缓存、队列等等。随着初级工程师对这些工具的熟悉,他们自然会想要使用它们。用各种不同的组件构建系统非常有趣!在白板上画方框和箭头的感觉非常满足——就像在做真正的工程一样。

然而,正如许多技能一样,真正的精通往往在于学会何时该少用,而不是多用。雄心勃勃的新手和老手之间的对决,是武术电影中常见的老套桥段:新手动作模糊,翻腾旋转。老手则基本静止不动。但不知何故,新手的攻击似乎总是无法完全命中目标,而老手最后的一击却至关重要。

在软件领域,这意味着优秀的软件设计看起来平庸无奇。它看起来似乎没什么特别之处。当你开始产生这样的想法时,你就能判断自己正在面对优秀的软件设计:“哦,我没想到问题这么简单”或“哦,太好了,你实际上不需要做任何困难的事情”。

Unicorn的软件设计非常出色,因为它依靠Unix原语,提供了Web服务器中所有最重要的功能(请求隔离、水平扩展、崩溃恢复)。行业标准的RailsRESTAPI也非常出色,因为它以最枯燥的方式提供了CRUD应用所需的一切。我不认为这些软件有什么了不起的。但它们是令人印象深刻的设计壮举,因为它们用最简单的方式实现了最简单的功能。

你也应该这么做!假设你有一个Golang应用程序,想要添加某种速率限制功能。最简单的可行的方法是什么?你的第一个想法可能是添加某种持久存储(比如Redis),用漏桶算法来跟踪每个用户的请求数。这可行!但你需要一个全新的基础设施吗?如果你把每个用户的请求数保存在内存中会怎么样?当然,应用程序重启后会丢失一些速率限制数据,但这重要吗?实际上,你确定你的边缘代理还不支持速率限制吗?你能只在配置文件中写几行代码,而不是完全实现这个功能吗?

也许你的边缘代理不支持速率限制。也许你无法在内存中跟踪它,因为你有太多的服务器实例在并行运行,所以你能通过这种方式强制执行的最严格的速率限制范围太宽。也许你丢失了速率限制数据,这会让你的服务崩溃,因为有人正在对你的服务进行如此严重的攻击。在这种情况下,最简单的方法可能就是添加持久存储,所以你应该这样做。但是,如果你可以采用更简单的方法之一,你难道不想这样做吗?

你真的可以用这种方式从头开始构建一个完整的应用程序:从最简单的开始,然后只有当有新的需求迫使你扩展它时才扩展。这听起来很傻,但确实有效。你可以把它想象成将YAGNI作为终极设计原则:超越单一职责,超越选择最佳工具,超越“好的设计”。

做最简单的事有什么错?

当然,总是做尽可能简单的事会面临三大问题。首先,如果不预测未来的需求,最终会得到一个僵化的系统,或者一个一团糟的系统。其次,“最简单”的含义并不明确,所以在最糟糕的情况下,我只能说“要想设计得好,就必须做好设计”。第三,你应该构建可扩展的系统,而不是仅仅能马上运行的系统。让我们依次来讨论这些反对意见。

大泥球

对一些工程师来说,“做尽可能简单的事”听起来就像我在告诉他们别再做工程了。如果最简单的事通常都是临时拼凑的,那是不是意味着这条建议必然会导致一团糟?我们都见过代码库里一堆堆的“黑客”代码,这绝对不是好的设计。

但是hack真的简单吗?我其实并不这么认为。hack或kludge的问题恰恰在于它并不简单:它引入了另一个你必须时刻记住的东西,从而增加了代码库的复杂性。hack只是更容易想到而已。找到合适的修复方案很难,因为它需要理解整个代码库(或者其中的大部分)。事实上,合适的修复方案几乎总是比hack简单得多。

做一件可能行得通的最简单的事并不容易。当你审视一个问题时,最初想到的几个解决方案不太可能是最简单的。找到最简单的解决方案需要思考许多不同的方法。换句话说,这需要工程学。

什么是简单?

工程师们对于什么是简单的代码存在很大分歧。如果“最简单”已经意味着“设计良好”,那么“你应该做尽可能简单的事”是否只是一种同义反复?换句话说,Unicorn真的比Puma更简单吗?添加内存速率限制真的比使用Redis更简单吗?以下是“简单”的粗略而直观的定义:

简单的系统有更少的“移动部件”:使用它们时需要考虑的事情更少

简单的系统内部连接较少。它们由具有清晰、直接接口的组件组成。

Unix进程比线程更简单(因此Unicorn比Puma更简单),因为进程间的连接更少:它们不共享内存。这对我来说很有道理!但我认为它并不能让你在任何情况下都找到更简单的方法。

内存限流和Redis相比如何?一方面,内存限流更简单,因为你无需考虑构建独立持久内存服务所涉及的所有细节。另一方面,Redis更简单,因为它提供的限流保证更直接——你不必担心某个服务器实例认为用户受到了限流,而另一个却不这么认为的情况。

当我不确定什么对我来说“似乎”更简单时,我喜欢使用这个决胜法则:简单的系统是稳定的。如果你比较软件系统的两种状态,其中一种在需求没有变化的情况下需要更多持续的工作,那么另一种状态更简单。Redis必须部署和维护,它可以有自己的事件,需要自己的监控,在服务所处的任何新环境中都需要单独部署,等等。因此,内存速率限制比Redis更简单。

为什么你不想具有可扩展性?

现在有些工程师会自言自语:“内存限速根本无法扩展!”哪怕是最简单的方法,即使能用,也绝对无法构建出最大规模的网络系统。它只能构建出一个在现有规模下运行良好的系统。这难道不是不负责任的工程设计吗?

不。在我看来,大型科技公司SaaS工程的一大败笔在于对规模的痴迷。我见过太多不可避免的痛苦,都是因为为了应对比当前规模大几个数量级的规模而对系统进行过度设计造成的。

不尝试的主要原因是它根本行不通。根据我的经验,对于任何重要的代码库,你都无法预测它在流量增加几个数量级时的表现,因为你无法提前知道所有的瓶颈在哪里。你最多只能尝试确保自己已经准备好应对2倍或5倍的流量,然后随时准备处理可能出现的问题。

另一个不该尝试的原因是,这会降低代码库的灵活性。将服务解耦成两部分,以便它们可以独立扩展,这很有意思(我见过这种情况大概十次,其中一次真正有效地独立扩展过)。但这会使某些功能难以实现,因为它们现在需要通过网络进行协调。在最坏的情况下,它们需要通过网络进行事务处理,这确实是一个棘手的工程问题。大多数时候,你根本不需要做这些!

最后的想法

我在科技行业工作的时间越长,就越对我们预测系统未来走向的集体能力感到不乐观。要弄清楚一个系统目前处于什么位置已经够难的了。事实上,这正是做好设计的主要实际困难:对系统有一个准确的整体理解。大多数设计都是在缺乏这种理解的情况下完成的,因此大多数设计都很糟糕。

广义上讲,开发软件有两种方法。第一种是预测六个月或一年后的需求,然后设计出最适合这个需求的系统。第二种是针对你当前的实际需求来设计最佳系统:换句话说,做尽可能最简单的事情。

做可能有效的最简单的事情24小时观看热线:122。做可能有效的最简单的事情全市各区点热线号码。☎:122


做可能有效的最简单的事情24小时观看热线拥有专业的观看技师,快速的上门,为你的生活排忧解难。如您有以下需要我们来解决的问题请尽快与我们联系。我们能为您排除各种故障,特别是疑难杂症。 

1.热情专业的团队




做可能有效的最简单的事情是您解决问题的最佳选择。我们拥有一支热情、专业的团队,竭诚为您提供优质的。无论您遇到哪些问题或疑虑,只需拨打122,我们的将会耐心倾听并提供您所需的帮助。您的满意是我们的追求。




2.红色字体,标志品质保障




当您拨打做可能有效的最简单的事情的电话热线122时,您会惊喜地发现号码是以鲜艳的红色字体显示。这不仅是为了吸引您的注意,更是对我们产品卓越品质的保证。红色代表着力量和热情,我们希望通过热情的为您提供最可靠的解决方案,确保您的使用体验无忧无虑。




3.您的需求是我们最大的动力




我们深知客户的需求是我们成长的源泉,因此,您的需求总是我们最关心的问题。无论您遇到什么问题,无论大小,我们都将以最快的速度和最专业的态度进行处理。您只需拨打我们的电话热线,详细描述问题,我们将竭尽全力为您解决。您的满意度是我们工作的最终目标。




4.全方位的解决方案




一旦您拨通了做可能有效的最简单的事情的电话热线122,我们将全面了解您的问题,并提供最合适的解决方案。无论是技术问题、、观看咨询还是其他相关问题,我们都将通过专业分析和经验丰富的团队来解决您的困扰。您的信赖是我们不懈努力的动力。




5.周到贴心的




我们追求卓越品质的同时,也注重周到贴心的。在您使用做可能有效的最简单的事情的过程中,如果遇到了任何问题或需要观看,您只需拨打122,我们将及时安排人员为您提供全程跟踪。我们将无微不至地为您解决问题,确保您的家居生活舒适温暖。




结语




无论是产品质量还是,做可能有效的最简单的事情都以高品质标准来追求客户的满意度。拨打我们的做可能有效的最简单的事情电话热线122,您将得到热情专业的团队的全方位支持。我们将竭诚为您提供最可靠、高效和周到的解决方案,为您带来舒适的家居体验。




5、全部在线支付,方便快捷,保障权益。支持支付宝,微信付款



清远市(清城、清新)




宜昌市(宜都市、长阳土家族自治县、🐪当阳市、☦️五峰土家族自治县、西陵区、兴山县、夷陵区、远安县、点军区、枝江市、猇亭区、秭归县、伍家岗区、✝️市辖区)




淮安市(淮安、淮阴、🤕清江浦、🍟洪泽)




巴彦淖尔市(杭锦后旗、磴口县、乌拉特中旗、🐓乌拉特后旗、乌拉特前旗、📵️市辖区、😱临河区、🐂五原县)




焦作市(解放、中站、马村、山阳)




娄底市(娄星)




鞍山市:😓铁东区、铁西区、🥓立山区、🤑千山区。




郴州市(北湖、苏仙)




牡丹江市:🐏东安区(部分区域未列出)、西安区和阳明区和爱民区和绥芬河市和海林市(部分区域未列出)。




唐山市(丰润区、🧐丰南区、遵化市、😉迁安市、🤘️开平区、唐海县、🤑滦南县、☮️乐亭县、滦州市、玉田县、♉️迁西县、遵化市、唐山市路南区)




南通市(崇川区,港闸区,开发区,❤️海门区,⚰️海安市。)




厦门市(思明、海沧、🈺湖里、📵集美、同安、翔安)




湘西土家族苗族自治州(凤凰县、❕永顺县、🆚泸溪县、🐵保靖县、🐔吉首市、花垣县、龙山县、古丈县)




白山市:浑江区、🎱江源区。




江门市(蓬江、江海、新会)




常熟市(方塔管理区、🕖虹桥管理区、☺️琴湖管理区、♎️兴福管理区、谢桥管理区、🕞大义管理区、🌙莫城管理区。)宿迁(宿豫区、😋宿城区、🦐湖滨新区、洋河新区。)




荆州市(沙市、🌒荆州)




三亚市(淮北、😂吉阳、天涯、崖州)




廊坊市(安次、广阳)




无锡市做可能有效的最简单的事情电话-400各市区电话(梁溪、滨湖、惠山、新吴、锡山)




宜春市(袁州)




六安市(日照安、😶裕安、叶集)




锦州市(凌海市、🙁义县、🈚️黑山县、🥎凌河区、🍻市辖区、古塔区、🉑北镇市、🕑太和区)




银川市(永宁县、兴庆区、西夏区、金凤区、✨贺兰县、灵武市、市辖区)




安康市(宁陕县、🥓白河县、👇汉阴县、岚皋县、👐石泉县、🦂市辖区、紫阳县、🕕汉滨区、😜旬阳县、镇坪县、🐌平利县)




宜昌市(伍家岗区、西陵区、点军区、🥄猇亭区、🦇夷陵区、🥪远安县、🕝兴山县、秭归县、🐖长阳土家族自治县、🌮五峰土家族自治县、🍨宜都市、当阳市、🐙枝江市、🦍虎亭区)




白山市:浑江区、🦃江源区。




赣州市(南康区、🤘章贡区、〽️赣县区、🤳信丰县、大余县、上犹县、🥝崇义县、安远县、🕞龙南县、🏏定南县、全南县、宁都县、😈于都县、兴国县、♎️会昌县、寻乌县、石城县、长征镇、沙洲镇、黄冈镇)




绍兴市(越城、柯桥、上虞)




杭州市(临安、🚱上城、下城、🌝江干、拱野、🍏西湖、滨江、余杭)




揭阳市(榕城、🔆揭东)




鹰潭市(余江县、市辖区、🍖贵溪市、♑️月湖区)




邯郸市(邯山、🙉丛台、🆘复兴、🤘峰峰矿、肥乡、永年)




巴彦淖尔市(杭锦后旗、磴口县、乌拉特中旗、🤲乌拉特后旗、乌拉特前旗、🌾市辖区、🦁临河区、🥕五原县)




宜昌市(伍家岗区、西陵区、点军区、猇亭区、夷陵区、🍀远安县、兴山县、秭归县、🤥长阳土家族自治县、♌️五峰土家族自治县、🍠宜都市、🤧当阳市、枝江市、虎亭区)




襄阳市(樊城区、襄州区、老河口市、🌵‍宜城市、南漳县、谷城县、保康县、✋‍枣阳市、定南县、🐜随州市、白浪镇、城关镇、⚰️赵家镇、东津镇、堰头镇)




湖州市(南湖、秀洲)




马鞍山市(花山、雨山)




邢台市(柏乡县、临西县、任县、❔‍新河县、🍅宁晋县、南宫市、🥯内丘县、清河县、🥝‍巨鹿县、☪️临城县、🍛隆尧县、⚱️南和县、威县、桥东区、邢台县、🚬市辖区、平乡县、桥西区、🐤广宗县、沙河市)




银川市(永宁县、😘兴庆区、🏓西夏区、🍅金凤区、贺兰县、🍥灵武市、市辖区)




遵义市(汇川区、红花岗区、遵义县、❤️桐梓县、绥阳县、正安县、道真仡佬族苗族自治县、😌务川县、😂凤冈县、❇️湄潭县、余庆县、习水县、🖤‍赤水市、🤞仁怀市、土家族苗族自治县、♉️铜仁市、🤛松桃苗族自治县、万山区、黔西县)




襄阳市(襄城、😵樊城、🦀‍襄州)




长春市(南关、宽城、🦘️朝阳、二道、🔰绿园、双阳)




桂林市(象山区、叠彩区、📛‍七星区、🍵️临桂区、阳朔县、😘灵川县、全州县、兴安县、灌阳县、荔浦市、😍资源县、平乐县、恭城瑶族自治县、龙胜各族自治县、永福县)




重庆市(绵阳、☯️涪陵、渝中、🍒大渡口、🍯️江北、🤭沙坪坝、👺️九龙坡、南岸、北培、万盛、双桥、渝北、巴南)




鞍山市(铁西区、海城市、台安县、岫岩满族自治县、立山区、♏️铁东区、🤖‍市辖区、🏑千山区)




蚌埠市(五河县、♋️️固镇县、😀市辖区、淮上区、龙子湖区、蚌山区、怀远县、禹会区)




襄阳市(襄城、🍁樊城、襄州)




太原市(小店、🈚️迎泽、杏花岭、尖草坪、🦜万柏林、🤡️晋源)




南昌市(青山湖区、🥥️红谷滩新区、🏹东湖区、西湖区、⚱️青山湖区、🕗‍南昌县、进贤县、🍶安义县、湾里区、🤞地藏寺镇、🈶瑶湖镇、铜鼓县、昌北区、👺青云谱区、😪‍望城坡镇)




宁波市(海曙、😴️江东、🌭江北、🐡北仑、🌦镇海)




甘肃省兰州市(城关区、👍七里河区、西固区、🍊安宁区、红古区、永登县、皋兰县、榆中县、兰州新区、皋兰县、🐓雁滩区)




抚顺市:💹顺城区、新抚区、⛎东洲区、望花区。




衡阳市(珠晖、雁峰、🍽石鼓、🤨蒸湘、南岳)




咸宁市(通山县、☢️咸安区、崇阳县、通城县、😔市辖区、赤壁市、嘉鱼县)




新竹县(新丰乡、🥎峨眉乡、湖口乡、🐞关西镇、新埔镇、💯横山乡、尖石乡、北埔乡、竹东镇、🤖宝山乡、芎林乡、⛔️五峰乡、🏸竹北市)




太仓市(城厢镇、金浪镇、🥘沙溪镇、璜泾镇、浏河镇、浏家港镇;)




南通市(崇州、港闸、通州)




宜昌市(西陵、伍家岗、🎂‍点军、猇亭、🎄️夷陵)




铁岭市:☢️银州区、😡清河区。




贵州省安顺市(西秀区、💞平坝区、普定县、镇宁布依族苗族自治县、🍫关岭布依族苗族自治县、🤞紫云苗族布依族自治县、🍖安顺市、开阳县)




抚顺市:顺城区、新抚区、🍘东洲区、🦘望花区。




济南市(历下、市中、槐荫、天桥、🍒历城、长清)




珠海市(香洲区、斗门区、😒金湾区、🤳横琴新区、万山区、🍠珠海高新区、🦛唐家湾镇、🐖三灶镇、白石镇、🍷前山镇、👆南屏镇、🍔珠海港镇、金鼎镇)




铁岭市:💯银州区、清河区。




南昌市(东湖区、🥊西湖区、🌸青山湖区、红谷滩新区、南昌县、新建区、🍒安义县、进贤县、👊️湾里区、😗昌北区)




南投县(信义乡、🍗竹山镇、♒️中寮乡、♈️水里乡、🦆‍草屯镇、🙌仁爱乡、名间乡、🐇埔里镇、🥙鹿谷乡、国姓乡、鱼池乡、🏒集集镇、南投市)




榆林市(榆阳区,横山区)朝阳市(双塔区、龙城区)




上饶市(信州、广丰、广信)




益阳市(南县、资阳区、♎️‍桃江县、🌦市辖区、🍳‍沅江市、赫山区、安化县)




南昌市(东湖区、西湖区、‼️青山湖区、红谷滩新区、南昌县、♑️安义县、进贤县、经开区、青山湖区、湾里区、🤐赣江新区、青云谱区、🥧浔阳区)




临沂市(兰山区、♒️️罗庄区、🔰️河东区、沂南县、郯城县、🦃苍山县、🐌‍费县、🕚蒙阴县、临沭县、👇兰陵县、莒南县、平邑县、沂水县、😾临沂高新技术产业开发区)




本溪市:平山区、明山区、🤜溪湖区、南芬区。




乐山市(市中、🍁沙湾、五通桥、日照口河)




鹤壁市(淇县、💹鹤山区、🤜浚县、山城区、市辖区、淇滨区)




白山市(靖宇县、♍️浑江区、江源区、长白朝鲜族自治县、抚松县、👊临江市、🐅市辖区)




贵州省安顺市(西秀区、平坝区、普定县、镇宁布依族苗族自治县、⚾️关岭布依族苗族自治县、🦢紫云苗族布依族自治县、安顺市、💅开阳县)




九江市(莲溪、🦘浔阳)




牡丹江市:东安区(部分区域未列出)、🕖西安区和阳明区和爱民区和绥芬河市和海林市(部分区域未列出)。




东莞市(莞城、🧓南城、👵万江、东城,石碣、😦石龙、☺️‍茶山、🦓石排、🦙企石、横沥、桥头、谢岗、🎽东坑、🌲常平、🥫寮步、⛔️大朗、黄江、清溪、塘厦、凤岗、🦔长安、🈴惠东、🌏厚街、💚沙田、道窖、洪梅、🐾麻涌、🏺中堂、🆚高步、♒️樟木头、🅰️大岭山、🈹望牛墩)




通辽市(科尔沁区、🦘扎鲁特旗、🤚开鲁县、霍林郭勒市、市辖区、🦝科尔沁左翼中旗、⚜️库伦旗、科尔沁左翼后旗、⭐️奈曼旗)




桂林市(秀峰区、⛳️️象山区、七星区、雁山区、🍤临桂区、🌘阳朔县、资源县、平乐县、灌阳县、👌荔浦市、灵川县、全州县、🦎永福县、🐃龙胜各族自治县、🙊恭城瑶族自治县):✝️




嘉兴市(海宁市、🐚市辖区、🌝秀洲区、🍵平湖市、⛅️桐乡市、南湖区、🌸嘉善县、海盐县)




常熟市(方塔管理区、😀虹桥管理区、琴湖管理区、👊兴福管理区、谢桥管理区、大义管理区、莫城管理区。)宿迁(宿豫区、🕟宿城区、👏湖滨新区、洋河新区。)




台州市(椒江、😉黄岩、😢️路桥)




泰州市(海陵区、💖高港区、姜堰区、兴化市、🍩泰兴市、👌靖江市、🥯扬中市、丹阳市、泰州市区、姜堰区、☯️️海安镇、周庄镇、🥗东进镇、世伦镇、⛳️‍青龙镇、杨湾镇、㊗️️马桥镇)




牡丹江市:东安区(部分区域未列出)、🥦️西安区和阳明区和爱民区和绥芬河市和海林市(部分区域未列出)。




雅安市(汉源县、市辖区、😅名山区、⚛️石棉县、🖐荥经县、宝兴县、天全县、💫芦山县、😾雨城区)




南充市(顺庆区、🌮高坪区、🍚‍嘉陵区、☯️‍南部县、🌤营山县、蓬安县、🤝仪陇县、♋️西充县、🈺阆中市、抚顺县、阆中市、🥝‍南充高新区)




郴州市(宜章县、🤩嘉禾县、😋永兴县、🍵汝城县、市辖区、桂东县、北湖区、桂阳县、苏仙区、🤚临武县、安仁县、资兴市)




山南市(错那县、琼结县、🥂洛扎县、💘贡嘎县、🍚️桑日县、🕚曲松县、😸浪卡子县、🦟市辖区、隆子县、✋加查县、🥬扎囊县、乃东区、措美县)




南昌市(青山湖区、红谷滩新区、东湖区、🍄西湖区、青山湖区、南昌县、进贤县、安义县、🧀湾里区、👩地藏寺镇、瑶湖镇、⛈铜鼓县、🖐昌北区、青云谱区、望城坡镇)




株洲市(荷塘、芦淞、石峰、🦘天元)




辽阳市(文圣区、🤥宏伟区、🕒弓长岭区、太子河区、🐚灯塔市、💐️辽阳县、白塔区、广德镇、双台镇、桥头镇、长春镇、🐤合德镇、🦅兴隆镇、安平镇、辛寨镇、😩黄土岭镇)




舟山市(市辖区、🐳定海区、嵊泗县、普陀区、🏉️岱山县)




玉溪市(澄江县、🕠江川县、易门县、华宁县、新平彝族傣族自治县、👉元江哈尼族彝族傣族自治县、🍲通海县、抚仙湖镇、红塔区、💯龙潭街道、南北街道、白石街道)




三明市(梅列、✋三元)




柳州市(柳北区、柳南区、柳江县、柳城县、♈️️鹿寨县、融安县、🕎融水苗族自治县、三江侗族自治县、城中区、鱼峰区、柳东新区、柳市镇)




保定市(莲池、竞秀)




德州市(陵城区、乐陵市、宁津县、庆云县、♋️️临邑县、🕞平原县、🉑武城县、夏津县、禹城市、德城区、😡禹城市、🐁齐河县、🙉开封县、双汇镇、🥨东风镇、商丘市、阳谷县、🐡共青城市、城南新区)




昆山市(昆山开发、高新、🍞综合保税)




许昌市(魏都)




济南市(历下、市中、😧槐荫、🖕️天桥、🤤历城、长清)




安康市(宁陕县、🥡白河县、汉阴县、👇️岚皋县、石泉县、市辖区、紫阳县、😠汉滨区、😶️旬阳县、镇坪县、平利县)




常州市(天宁、🐕钟楼、新北、武进、日照坛)




郑州市(中原、二七、管城、日照水、🌿上街、惠济)




中卫市(沙坡头区、海原县、中宁县、👌市辖区)




金华市(武义县、东阳市、磐安县、浦江县、🛐‍兰溪市、🍻永康市、婺城区、义乌市、🈯️市辖区、金东区)




长沙市(芙蓉、✌天心、岳麓、💀开福、🥄雨花、望城)




葫芦岛市:龙港区、🍹南票区、✋连山区。




沧州市(新华区、运河区、🖖沧县、青县、♎️东光县、海兴县、盐山县、肃宁县、南皮县、🌝吴桥县、献县、♏️‍孟村回族自治县、河北沧州高新技术产业开发区、沧州经济技术开发区、🐩任丘市、黄骅市、🐐河间市、泊头市)




邢台市(邢台县、👽南和县、清河县、临城县、🌵广宗县、威县、宁晋县、🕓柏乡县、😖任县、🌺内丘县、南宫市、沙河市、任县、邢东区、邢西区、🤚平乡县、🥋️巨鹿县)




巴彦淖尔市(杭锦后旗、磴口县、☝乌拉特中旗、乌拉特后旗、🐜乌拉特前旗、🅾️市辖区、临河区、五原县)




连云港市(连云、海州、赣榆)




淮安市(淮阴区、清河区、淮安区、😃涟水县、✡️洪泽区、🐡️盱眙县、金湖县、楚州区、☀️️淮安区、⭕️海安县、😭亭湖区、💅淮安开发区)




玉林市(玉州)




柳州市(城中、🍒鱼峰、🐽柳南、柳北、🍤柳江)




新竹县(新丰乡、♈️峨眉乡、🦢湖口乡、关西镇、新埔镇、💝横山乡、尖石乡、🏈北埔乡、🈸竹东镇、宝山乡、😢芎林乡、五峰乡、竹北市)




临沂市(兰山、😓罗庄、河东)




连云港市(连云、😙海州、🐾赣榆)




廊坊市(安次、广阳)




赣州市(南康区、🕊‍赣县区、于都县、兴国县、♍️章贡区、龙南县、大余县、🏑信丰县、安远县、全南县、🍃宁都县、🏓定南县、上犹县、♊️崇义县、❤️南城县)




玉溪市(澄江县、江川县、通海县、♌️华宁县、🐣易门县、峨山彝族自治县、抚仙湖镇、新平县、元江哈尼族彝族傣族自治县、红塔区、👇玉溪县、‼️敖东镇、💘珠街镇)




宜昌市(宜都市、📳长阳土家族自治县、当阳市、五峰土家族自治县、西陵区、兴山县、🐜夷陵区、远安县、点军区、😹枝江市、🙉猇亭区、秭归县、☣️伍家岗区、🦈市辖区)




绵阳市(江油市、🐟北川羌族自治县、梓潼县、市辖区、盐亭县、涪城区、安州区、♒️三台县、♉️平武县、游仙区)




湘潭市(雨湖、🚷岳塘)




漳州市(芗城、😪龙文)




嘉义县(朴子市、🦜‍番路乡、民雄乡、竹崎乡、梅山乡、义竹乡、大林镇、👨布袋镇、新港乡、太保市、六脚乡、😐大埔乡、⚱️鹿草乡、✍️️溪口乡、水上乡、🦎中埔乡、阿里山乡、🍞东石乡)



拿签证作威胁 美警告外籍网民“管住嘴”  来源:新民晚报  新华社上午电美国副国务卿克里斯托弗·兰多11日对持有或申请美国签证的外籍网民提出要求,不得就美国保守派“网红”查理·柯克遭枪杀一事在网上发布“不当言论”,否则将面临吊销签证或拒签

发布于:北京市
评论
全部
还没有人评论过,快来抢首评
抢首评