小编Sav*_*esh的帖子

Kafka python 优雅关闭消费者

我正在尝试正常关闭 kafka 使用者,但脚本会因停止心跳线程而阻塞。如何使用 kafka-python 在 SIGTERM 上优雅地关闭使用者。这就是我所做的

import logger as logging
import time
import sys
from kafka import KafkaConsumer
import numpy as np
import signal


log = logging.getLogger(__name__)


class Cons:
    def __init__(self):

        signal.signal(signal.SIGINT, self.sigterm_handler)
        signal.signal(signal.SIGTERM, self.sigterm_handler)
        self.consumer = KafkaConsumer('dummy-topic', group_id='poll-test', bootstrap_servers=['b1'])

    def sigterm_handler(self, signum, frame):
        log.info("Sigterm handler")
        self.consumer.close(autocommit=False)
        sys.exit(0)



    def consume(self):
        try:
            while True:
                records = self.consumer.poll(timeout_ms=500, max_records=500)
                for topic_partition, consumer_records in records.items():
                    for record in consumer_records:
                        log.info("Got Record - {}".format(record))
                    #code to manually commit


        except ValueError as e:
            log.exception("exception") …
Run Code Online (Sandbox Code Playgroud)

python apache-kafka kafka-python python-3.7

7
推荐指数
1
解决办法
722
查看次数

仅显示UIView的角落

如何仅显示UIView的角落?

        let view = UIView()
        view.layer.borderColor = UIColor.white.cgColor

        view.layer.borderWidth = 2 
           let maskframe = UIView(frame: CGRect(x:0, y:0, 
          width:view.frame.width, height:view.frame.height))

         view.layer.mask = maskframe.layer.`
Run Code Online (Sandbox Code Playgroud)

这只掩盖了右边缘,我也不明白它是如何工作的.

像这样

draw uiview ios swift

6
推荐指数
1
解决办法
1245
查看次数

用于后续在 python 中运行的缓存工具

我是初学者。对不起,如果我的问题很幼稚。python 中的缓存工具是否适用于后续运行?

import cachetools
import time


@cachetools.cached({})
def find_sum(n):
    time.sleep(5)
    return n+2


print find_sum(2)
print find_sum(3)
print find_sum(2)
Run Code Online (Sandbox Code Playgroud)

因此,在第一次运行期间,第三次调用更快,但下次我运行文件时,我希望第一次调用更快并从缓存中获取结果。缓存工具可以做到这一点吗?

python caching

5
推荐指数
1
解决办法
4580
查看次数

Unicode格式

我正在使用字符串格式.对于英语格式是格式整洁,但对于unicode字符,格式是随意的.谁能告诉我原因?例:

form = u'{:<15}{:<3}({})'
a = [
 u'?? ???????',
 u'?? ????????',
 u'?? ???????',
 u'?? ???? ',
 u'?? ???????…',
 u'?? ???? ',
 u'?? ????? ',
 u'?? ?????? ',
 u'? ?????? ',
 u'?? ?????????????? ??',]

 for i in range(0, 10):
     print form.format(a[i][:12], 1, 2)
Run Code Online (Sandbox Code Playgroud)

输出为 在此输入图像描述

s = [
 u'abcdef',
 u'akash',
 u'rohit',
 u'anubhav',
 u'bhargav',
 u'achut',
 u'punnet',
 u'tom',
 u'rach',
 u'kamal'
 ]
for i in range(0, 10):
     print form.format(s[i][:12], 1, 2)
Run Code Online (Sandbox Code Playgroud)

得到: 在此输入图像描述

python python-unicode

3
推荐指数
1
解决办法
192
查看次数