Code Monkey home page Code Monkey logo

messenger-backend's Introduction

Hi there 👋

Years Badge Repos Badge Visits Badge Page Views GitHub followers

My name is Denis Stasyev, and I am Web Developer, currently pursuing my MSc in Computer Science at The Moscow Institute of Physics and Technology. Here are some facts about me:

  • 🔭 Working as a Software Engineer.
  • 👨‍💻️ Like TypeScript / JavaScript, Svelte and had experience with React, Redux, as well as writing code on Python and C++.
  • ⚡ Fun fact: worked with pure V8 Engine, without Node.js environment.

🔗 Links

I am always open to collaborate on projects and innovative/disruptive ideas. Find out more about me and feel free to connect with me here:

Gmail Github Repositories NPM Packages Medium Habr LinkedIn

📈 Stats

My GitHub stats

messenger-backend's People

Contributors

denisstasyev avatar

Stargazers

 avatar  avatar

Watchers

 avatar

messenger-backend's Issues

Исправления 2

  • update_user - вместо populate заполнять поля вручную
  • db.session и logout
  • заменить map на [make_public_uri(...) ]
  • make_public_member - 2 запроса к базе в цикле
  • заменить на POST
  • посмотреть триггеры в базе на onupdate
  • cascade chats в User
  • load_user ( ... : int) и убрать преобразование типов int() (использовать: mypy, pycontracts) и проверить, что вседа int
  • проверить default в Chat
  • вместо Members сделать many-to-many
  • включить Profiler
  • limit (реализовать фото)
  • models.py User проверить работу (creator_id) при удалении user и cascade delete chat (42)

Доделки API

Доделать методы API с учётом бизнес-логики:

  • Message
  • Attachment

Attachment API

  • Возможно надо добавить в Message поле с Attachment.attachment_id, так как сейчас при возврате списка сообщений непонятно какие из них содержат Attachment
  • Сделать отправку файлов на облако

onupdate

Триггеры на onupdate в БД не создаются

Дальнейшее развитие

  • supervisord.com - чтобы руками не запускать celery
  • тестировать узкие места в обращении в БД (нагрузочное тестирование через apache test)

Исправления 1

views.py:

  • regex добавить r и убрать pylint disable
  • error в обработчике отправлять обратно
  • supervisord.com - чтобы руками не запускать celery
  • подумать о целесообразности использования Memcached
  • в SELECT вместо \ использовать " " в каждой строке
  • len(chats) место chats == []
  • 587 строка is None внутрь поместить
  • POST вместо PUT и DELETE
  • скобки в возвратах лишние
  • запросы и без USING должны сработать
  • заменить удаление на CASCADE
  • 284 строка - вместо 3 обходов 1 можно
  • узкие места в обращении в БД (нагрузочное тестирование через apache test)
  • поменять функции make_public_uri
  • Использовать Memcached для списка чатов пользователя и убрать кеширование пользователей (помнить: разным клиентам - разные данные => разное кешировать)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.