小编Win*_*ton的帖子

如何使用 Pytest 在 Django 中测试缓存存储(Redis)?

我正在使用 Django 1.11.9 和django-pytest库来测试我的应用程序。另外,我使用 Redis 作为缓存存储。我的问题是 \xe2\x80\x94 如何制作测试缓存存储并在运行测试之前使用测试数据设置它?与 Django 数据库的方式类似。

\n\n

我想添加一些key: value数据来测试缓存存储(在 Redis 中),运行测试,然后删除所有这些测试数据(清除测试缓存)。

\n

django caching redis pytest pytest-django

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

带有 Django 通道的恒定数据流

我正在努力熟悉Django channelsweb-sockets。我有一个任务 - 不断地向连接到频道的任何人流式传输数据。
目前,这是来自官方教程的一段代码,有一些改进。

class ChatConsumer(AsyncWebsocketConsumer):
    async def connect(self):
        self.room_name = self.scope['url_route']['kwargs']['room_name']
        self.room_group_name = f'chat_{self.room_name}'

        if not hasattr(self, 'vehicle'):
            # this produses constant data stream
            self.vehicle = connect('/dev/ttyACM0', wait_ready=True, rate=4)

        await self.channel_layer.group_add(
            self.room_group_name,
            self.channel_name
        )

        await self.accept()

        # this part does not work!
        await self.send(text_data=json.dumps({
            'message': {
                        'mess': "Hi",
                        'yaw': self.vehicle._yaw,
                        'pitch': self.vehicle._pitch,
                        'roll': self.vehicle._roll,
                       }
        }))


    async def disconnect(self, close_code):
        # Leave room group
        await self.channel_layer.group_discard(
            self.room_group_name,
            self.channel_name
        )
Run Code Online (Sandbox Code Playgroud)

但是现在这段代码断开连接,前面没有显示任何内容。我找到了这个答案,但那个循环也不起作用。
如果我将 while …

python django websocket django-channels

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

Django 频道没有名为“asgiref.sync”的模块错误

我正在尝试为我的项目使用渠道。我按照本教程Raspberry PI 和 Django Channels来开发我的项目。但是运行服务器python3 manage.py runsever给了我下面的错误。

root@raspberrypi:/home/pi/sensor# python3 manage.py runserver 0:8000
:0: UserWarning: You do not have a working installation of the service_identity module: 'cannot import name 'opentype''.  Please install it from <https://pypi.python.org/pypi/service_identity> and make sure all of its dependencies are satisfied.  Without the service_identity module, Twisted can perform only rudimentary TLS client hostname verification.  Many valid certificate/hostname mappings may be rejected.
:0: UserWarning: You do not have a working installation of the service_identity module: …
Run Code Online (Sandbox Code Playgroud)

python sockets django channel

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

我可以使用芹菜来完成每秒钟的任务吗?

我每秒都在运行一个任务,而 celery 似乎并不是每秒都实际执行该任务。

我猜想 celery 对于每 1 分钟的任务来说可能是一个很好的调度程序,但可能不足以满足每第二个任务的需要。

这是说明我的意思的图片。

在此输入图像描述

我正在使用以下选项

     'schedule': 1.0,
     'args': [],
     'options': {
         'expires': 3
     }
Run Code Online (Sandbox Code Playgroud)

我正在使用芹菜 4.0.0

celery

2
推荐指数
1
解决办法
7407
查看次数

运行黑色会导致错误“此浮点数没有前导数字”

当我尝试使用 python 项目的特定文件运行 black 时black a_file.py,出现以下错误:

 Error reading configuration file: This float doesn't have a leading digit (line 19 column 1 char 205)
Run Code Online (Sandbox Code Playgroud)

下面是我的 pyproject.toml 文件:

[tool.black]
line-length = 88
include = '\.pyi?$'
exclude = '''
/(
    \.git
  | \.hg
  | \.mypy_cache
  | \.tox
  | \.venv
  | buck-out
  | build
)/
'''

[flake8]
max-line-length = 88
max-complexity = 18
select = B, C, E, F, W, T4, B9
ignore = E203, E266, E501, W503, F403, F401
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

python flake8 pyproject.toml

2
推荐指数
1
解决办法
2429
查看次数

向 Linux 内核添加一个简单的系统调用

我刚刚向 Linux 内核添加了一个系统调用。它只需要一个char*参数名称并打印 Hello name。

这是系统调用代码:

asmlinkage long sys_hello(char* name) { printk("Hello %s \n", name); return 0; }

这是应该运行系统调用进行测试的代码:

int main() 
{
    long int amma  = syscall(318,"Winston");
    printf("Returned %lu \n" ,amma);  
    return 0; 
}
Run Code Online (Sandbox Code Playgroud)

但是当我运行这个时,我得到了一个被杀死的输出。关于解决这个问题有什么想法吗?提前致谢。

ubuntu system-calls linux-kernel kill-process

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

将 nokaslr 添加到内核命令行

我正在尝试使用 qemu 和 gdb 调试 Linux 内核。问题是 gdb 不会在断点处停止。我搜索了一下,发现关闭 kASLR 可能会有所帮助,因为 kASLR 会混淆 gdb。

-- 在客户机上安装该内核。

+- 在来宾上安装该内核,通过在内核命令行中添加“nokaslr”来关闭 KASLR。

现在我不知道将 nokaslr 添加到命令行意味着什么以及执行此操作的方法。任何想法?

linux debugging gdb qemu linux-kernel

0
推荐指数
1
解决办法
6402
查看次数