localhost

SpringCloud 融入 Python - Flask

社会主义新天地 提交于 2019-12-26 01:09:00
前言 该篇文章分享如何将 Python Web 服务融入到Spring Cloud微服务体系中,并调用其服务,Python Web框架用的是Flask 方案 Sidecar + Flask ,在这里,我们会使用 Sidecar 将 Python 接口注册到 SpringCloud 中,将 Python 接口当作 Java 接口进行调用(通过 SpringCloud 去调用 Sidecar ,然后通过 Sidecar 去转发我们的程序请求) Sidecar 是 SpringCloud 提供的一个可将第三方的 rest 接口集成到 SpringCloud 中的工具 Python服务 manage.py import json from flask import Flask, Response, request, make_response, jsonify app = Flask(__name__) @app.route("/health") def health(): result = {'status': 'UP'} return Response(json.dumps(result), mimetype='application/json') @app.route("/getUser") def getUser(): result = {'username': 'python',

python 第七天

落爺英雄遲暮 提交于 2019-12-26 00:43:52
1、socket就是将下边的TCP/IP协议进行封装,留出来的接口用户通信 1.1、Socket Families socket.AF_UNIX unix本机进程间通信 socket.AF_INET IPV4 socket.AF_INET6 IPV6 1.2、Socket Types socket.SOCK_STREAM #for tcp socket.SOCK_DGRAM #for udp 2、Socket 参数 2.1、socket. socket ( family=AF_INET , type=SOCK_STREAM , proto=0 , fileno=None ) 声明socket类型,同时生成socket链接对象 2.2、 s.bind(address) s.bind(address) 将套接字绑定到地址 2.3、 s.listen(backlog) 开始监听传入连接 2.4、 sk.setblocking(bool) 是否阻塞(默认True),如果设置False,那么accept和recv时一旦无数据,则报错。 2.5、 sk.accept() 接受连接并返回(conn,address),其中conn是新的套接字对象,可以用来接收和发送数据。address是连接客户端的地址。 2.6、 sk.connect(address) 连接到address处的套接字。一般

python 协程, 异步IO Select 和 selectors 模块 多并发演示

被刻印的时光 ゝ 提交于 2019-12-26 00:42:13
主要内容 Gevent协程 Select\Poll\Epoll异步IO与事件驱动 selectors 模块 多并发演示 协程 协程,又称微线程,纤程。英文名Coroutine。一句话说明什么是线程: 协程是一种用户态的轻量级线程 。 协程拥有自己的寄存器上下文和栈。协程调度切换时,将寄存器上下文和栈保存到其他地方,在切回来的时候,恢复先前保存的寄存器上下文和栈。因此: 协程能保留上一次调用时的状态(即所有局部状态的一个特定组合),每次过程重入时,就相当于进入上一次调用的状态,换种说法:进入上一次离开时所处逻辑流的位置。 协程的好处: 无需线程上下文切换的开销 无需原子操作锁定及同步的开销   "原子操作(atomic operation)是不需要synchronized",所谓原子操作是指不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何 context switch (切换到另一个线程)。原子操作可以是一个步骤,也可以是多个操作步骤,但是其顺序是不可以被打乱,或者切割掉只执行部分。视作整体是原子性的核心。 方便切换控制流,简化编程模型 高并发+高扩展性+低成本:一个CPU支持上万的协程都不是问题。所以很适合用于高并发处理。 缺点: 无法利用多核资源:协程的本质是个单线程,它不能同时将 单个CPU 的多个核用上,协程需要和进程配合才能运行在多CPU上

腾讯微服务框架Tars的初体验

江枫思渺然 提交于 2019-12-26 00:28:36
最近研究了一下腾讯的微服务体系开发框架。 官方的搭建过程 : https://github.com/TarsCloud/Tars/blob/master/Install.zh.md 自己填的坑: 不得不说,文档写得很好,几乎没遇到什么坑。只有两点要注意: 1.源码安装mysql的时候,把mysql.sock软链接到指定目录,否则,直接执行mysql -uroot的话会报找不到sock的错误。 ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock 2.mysql安装完给用户授权的过程走不下去了。 查看了mysql.user表: +-----------+------------+-------------------------------------------+-------------+--------------+------------------------+ | Host | User | Password | Select_priv | Trigger_priv |几乎所有字段都是 | +-----------+------------+-------------------------------------------+-------------+--------------+-----------------------

Simple Form PHP $_POST not Working

二次信任 提交于 2019-12-25 17:18:29
问题 /*loginform.php*/ <html lang="en"> <html> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form method="post" action="login.php"> <fieldset> <input name="email" type="text"> <input name="password" type="text"> <input type="submit"> </fieldset> </form> </body> </html> Trying to run the above html code into the below file named "login.php" but it is not pulling any POST data from the form, I have no reason why. I feel like its PhpStorm and XAMPP conflicting, but they are in

Hadoop使用(一)

旧城冷巷雨未停 提交于 2019-12-25 16:51:14
hadoop框架 Hadoop使用主/从(Master/Slave)架构,主要角色有NameNode,DataNode,secondary NameNode,JobTracker,TaskTracker组成。 其中NameNode,secondary NameNode,JobTracker运行在Master节点上,DataNode和TaskTracker运行在Slave节点上。 1,NameNode NameNode是HDFS的守护程序,负责记录文件是如何分割成数据块的,以及这些数据块被存储到哪些数据节点上。它的功能是对内存及I/O进行集中管理。 2,DataNode 集群中每个从服务器都运行一个DataNode后台程序,后台程序负责把HDFS数据块读写到本地文件系统。需要读写数据时,由NameNode告诉客户端去哪个DataNode进行具体的读写操作。 3,Secondary NameNode Secondary NameNode是一个用来监控HDFS状态的辅助后台程序,如果NameNode发生问题,可以使用Secondary NameNode作为备用的NameNode。 4,JobTracker JobTracker后台程序用来连接应用程序与Hadoop,用户应用提交到集群后,由JobTracker决定哪个文件处理哪个task执行,一旦某个task失败

使用 docker 部署基于 selenium+chrome-headless的服务

混江龙づ霸主 提交于 2019-12-25 16:41:34
使用 docker 部署基于 selenium+chrome-headless的服务 1、编写 docker-compose 文件 bs-whatweb-chrome: image: selenium/standalone-chrome:latest # 使用官方镜像 ports: # 端口映射(后续可能没用) - 9999:4444 shm_size: 2g # docker 默认的共享内存只有 64M,当启动多个 Chrome 实例的时候可能会导致 Chrome 崩溃,所以需要增大/dev/shm的内存 2、基础配置 selenium 容器的 hostname 是 Chrome,所以需要修改COMMAND_EXECUTOR的 IP地址,修改如下: bs-whatweb-chrome 为项目中关于 selenium容器名字 # chromedriver_url COMMAND_EXECUTOR=http://bs-whatweb-chrome:4444/wd/hub 3、使用示例 from selenium import webdriver from selenium.webdriver.chrome.options import Options from selenium.webdriver.common.desired_capabilities import

Kibana7.5使用配置

若如初见. 提交于 2019-12-25 15:43:38
这篇文章重点介绍一下kibana的配置。 elasticsearch7.5集群的搭建文章请参见: https://blog.51cto.com/lovejxs/2457301 一、安装启动 下载页面: https://www.elastic.co/cn/downloads/past-releases 下载:wget -c https://artifacts.elastic.co/downloads/kibana/kibana-7.5.0-linux-x86_64.tar.gz 说明: .tar.gz 整个包是独立的。默认情况下,所有的文件和目录都在 $KIBANA_HOME — 解压包时创建的目录下。这样非常方便,因为您不需要创建任何目录来使用 Kibana,卸载 Kibana 就是简单地删除 $KIBANA_HOME 目录。但还是建议修改一下配置文件和数据目录,这样就不会删除重要数据。 二、目录结构 三、启动kibana nohup ./kibana --allow-root & 我的配置如下: server.port: 5601 server.host: "localhost" server.name: "kibana" elasticsearch.hosts: ["http://192.168.18.7:9200"] i18n.locale: "zh-CN" 四、访问:

Netbeans 8.0.2 Debugger Breakpoints Not Working

隐身守侯 提交于 2019-12-25 14:24:19
问题 I just installed Netbeans for PHP (version 8.0.2). XDebug seemed to come with this installation. I'm trying to get the breakpoints and stepping through the code to work on my local machine, which is running WAMP, to work. I've never used debugging for PHP; only with Excel VBA, so I'm familiar with how breakpoints and stepping through code works. It seems that this feature comes with Netbeans/XDebug. But when I click on the debug button on the top middle of the screen, a bunch of buttons pop

Error: ConnectFailure (Connection refused)

*爱你&永不变心* 提交于 2019-12-25 13:14:54
问题 I have the xamarin.forms application for which i am trying to connect localhost from PC to Iphone simulator in mac,Iam using the Ip address for connecting, private string Uri = "http://192.168.0.16:62271/";//Windows Ip address:localhost port number private string GetDishesUrl = "api/DishDetails/GetDishDetails?id=5"; try{ var httpClient = new HttpClient(); httpClient.BaseAddress = new Uri(Uri); var response = await httpClient.GetAsync(new Uri(Uri + GetDishesUrl)); var stringAsync = await