Docker Kubernetes 微服务容器化实践(二) 2.1 微服务实战

  • 业务场景

  1. 用户可以注册和登陆
  2. 登录用户可以对课程进行CRUD操作
  3. 架构图
  4. 服务内容

  • 开发步骤

  1. thrift安装 :安装教程
  2. 创建message_service.py -->在原先安装教程的项目测试的基础上,在message文件夹下创建message_service.py,将api文件夹下的message_service.py 定义的接口Iface,在message_service.py实现类MessageServiceHandler中实现它。
    # coding: utf-8
    from message.api import MessageService
    from thrift.transport import TSocket
    from thrift.transport import TTransport
    from thrift.protocol import TBinaryProtocol
    from thrift.server import TServer
    
    import smtplib
    from email.mime.text import MIMEText
    from email.header import Header
    
    sender = '[email protected]'
    authCode = 'aA111111'
    class MessageServiceHandler:
    
        def sendMobileMessage(self, mobile, message):
            print ("sendMobileMessage, mobile:"+mobile+", message:"+message)
            return True
    
        def sendEmailMessage(self, email, message):
            print ("sendEmailMessage, email:"+email+", message:"+message)
            messageObj = MIMEText(message, "plain", "utf-8")
            messageObj['From'] = sender
            messageObj['To'] = email
            messageObj['Subject'] = Header('慕课网邮件', 'utf-8')
            try:
                smtpObj = smtplib.SMTP('smtp.163.com')
                smtpObj.login(sender, authCode)
                smtpObj.sendmail(sender, [email], messageObj.as_string())
                print ("send mail success")
                return True
            except smtplib.SMTPException:
                print ("send mail failed!")
                return False
    
    
    if __name__ == '__main__':
        handler = MessageServiceHandler()
        processor = MessageService.Processor(handler)
        transport = TSocket.TServerSocket(None, "9090")
        tfactory = TTransport.TFramedTransportFactory()
        pfactory = TBinaryProtocol.TBinaryProtocolFactory()
    
        server = TServer.TSimpleServer(processor, transport, tfactory, pfactory)
        print ("python thrift server start")
        server.serve()
        print ("python thrift server exit")

     

  3.  
  4.  未完待续