Уроки Laravel Vue: Redis Node и Socket.IO обновление диаграммы в режиме реального времени | free way

Поделиться
HTML-код
  • Опубликовано: 21 окт 2024
  • Laravel 5.5, 5.6 и выше
    Подписывайтесь на канал: goo.gl/4pPb9b
    Все новости и тонкости работы с Laravel у нас.
    ============
    Не бойтесь открывать ссылки они сделаны с помощью сервиса google: goo.gl/
    Описание:
    Начнем обучаться правильно работать с vue в laravel.
    Laravel realtime free way.
    Laravel реалтайм бесплатно.
    $-------Реквизиты для поддержки проекта -------$
    Находятся на нашем сайте по адресу dka-develop.ru:
    goo.gl/BSr65a
    -----------------------------------------------------
    Официальный сайт:
    dka-develop.ru
    Music:
    Triumph - Yung Logos
    Music: Alexandr Tulupov

Комментарии • 81

  • @Ooshka
    @Ooshka 6 лет назад +13

    Братишки, кто на Windows: ruclips.net/video/ncFhlv-gBXQ/видео.html - настройка редис, смотрим до 3:00
    Далее все по этому божественному видосику :)
    Кому лень смотреть, вот настройка REDIS on Windows:
    1. Заходим: github.com/MicrosoftArchive/redis/releases
    2. Качаем последний релиз zip
    3. Распаковываем куда удобно
    4. Запускаем redis-server.exe
    5. Запускаем redis-cli.exe
    6. Балуемся с ping PONG...
    7. Далее не закрывая эти окна смотрим эту видюшку :)

    • @user-maximilianno
      @user-maximilianno 6 лет назад

      А еще можно скачать Laragon там он есть встроенный

  • @yanodincov
    @yanodincov 6 лет назад +2

    Благодарен за такое внимание к деталям php. Так гораздо проще усваивать информацию.

  • @ИльнарБадыков-ы2ж
    @ИльнарБадыков-ы2ж 3 года назад +2

    Смотрел, пересматривал, дебажил данный код где-то пол года. Даже боюсь смотреть следующий урок :)
    p.s. забыл сказать, соединил два плейлиста от DKA-DEVELOP и это одна из причин затяжки, второй плейлист это "Docker уроки для начинающих от А до Я". Без докера сейчас никак не обойтись :)
    Спасибо большое автору, за все его труды!!!

  • @VajasanaDas
    @VajasanaDas Год назад

    Спасибо, эти видео до сих пор полезны

  • @ГрифонВещий
    @ГрифонВещий 6 лет назад +4

    Очень ценная информация! Лайк как минимум, обязателен!!!

  • @ДаниилЧайка-ч3в
    @ДаниилЧайка-ч3в 6 лет назад +6

    Просто лучший материал и очень доходчиво, так держать!)

  • @АйбатКарашев
    @АйбатКарашев 5 лет назад +1

    Здравствуйте, у всех у кого не вышло попробуйте сделать все как на видео через yarn и убедитесь что вы делаете все действия именно в SocketComponent.vue, у меня тоже не выходило я сделал все заново через yarn и оказывается что я затупил и написал код в ChartLineComponent.vue!!!!
    Автору видео огромное спасибо пока самый лучший ресурс изучения Laravel в целом))

  • @free115
    @free115 5 лет назад +10

    Laravel 6
    config/database.php => redis.options.prefix == ""
    config/database.php => redis.client => env('REDIS_CLIENT', 'predis')
    php artisan config:cache

    • @vladimirvladimir7359
      @vladimirvladimir7359 4 года назад +2

      Блин братан, спасибо тебе большое, я не посмотрел сразу в комментарии и несколько часов искал проблему, прям реально помог мне

    • @far_from_under
      @far_from_under 4 года назад +1

      Спасибо большое друг, применил твои инструкции и все заработало как нужно))

  • @vsl13666
    @vsl13666 5 лет назад +1

    Отличная серия уроков!)
    Для Laravel >= 5.8 хочу уточнить, что нужно в config/database.php => redis.options.prefix закомментировать или установить пустую строку ("") или добавить префикс на фронте в vue компоненте... Сначала сам не мог понять в чем проблема, почему не работает

  • @IlnarBadykov
    @IlnarBadykov 2 года назад

    Это ведь находка!

  • @David-wb4re
    @David-wb4re 6 лет назад +2

    Спасибо за видео, как и всегда крутой туториал. Жаль не дождался урока ) сделал сегодня через Echo, но посмотреть все же было интересно ). Еще раз огромное спасибо за труд

    • @DKADEVELOP
      @DKADEVELOP  6 лет назад

      Всегда рады!

    • @David-wb4re
      @David-wb4re 6 лет назад

      Возможно вопрос покажется странным, но если Вы знаете в чем проблема, то было бы здорово).
      По Вашему видео Вы включаете в консоли только node server, но если сделаю все точно по уроку получу [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
      решение простое включить redis, но опять же Вы этого не делали или я просмотрел ) Спасибо за внимание
      полная ошибка
      [ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
      at Object._errnoException (util.js:1031:13)
      at _exceptionWithHostPort (util.js:1052:20)
      at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1195:14)
      решение: установка редиса глобально и написать в консоли redis-server
      laravel + MAMP

    • @DKADEVELOP
      @DKADEVELOP  6 лет назад

      Здравствуйте,
      мы старались в некоторых видео показать, что нужно проверять перед тестом.
      В последнем видео, это точно есть. И в первом где настраиваем.
      А так он у нас стартует автоматом.

    • @David-wb4re
      @David-wb4re 6 лет назад

      О спасибо за быстрый ответ)

  • @ВладимирВ-с4ф
    @ВладимирВ-с4ф 3 года назад +1

    Как nodejs, используемый здесь, запустить на PHP хостинге ?

  • @1980PaulL
    @1980PaulL 5 лет назад +1

    Сбросьте кто-нибудь ссылку на исходный код урока. Почему-то широковещание не работает (график обновляется только в одной вкладке). Все уже перепробовал, на разных портах сервер запускал, редис переустановил, по-ходу ошибку где-то допустил, не могу найти где.

  • @AxelMacaroff
    @AxelMacaroff 4 года назад +2

    Зачем в обучающем видео эта музыка? Автор, ты пытаешся что донести? Свои музыкальные предпочтения?

    • @НикитаИванов-ы5ъ8д
      @НикитаИванов-ы5ъ8д 4 года назад

      Не гони, хорошая музыка. Для человека, разработка - это искусство.

  • @vladimirpitchkurov4483
    @vladimirpitchkurov4483 4 года назад

    спасибо за ваш труд! а я Rachet поднимал для чатов. этот способ более изящно выглядит))

  • @Zubat59
    @Zubat59 4 года назад +2

    Laravel 7, проблемы те же. Может кому-то поможет, если возникают проблемы.
    1) config=>database.php
    'redis' => ['options' => ['prefix' => "",]],
    Именно пустой, а не закомментированный
    2) OpenServer запуск redis в папке проекта:
    redis-server
    redis-cli
    3) Компонент var socket = io('learning.loc:3000'); - обязательное совпадение домена.

    • @far_from_under
      @far_from_under 4 года назад +1

      Спасибо большое, пункт 1 помог))

    • @НикитаИванов-ы5ъ8д
      @НикитаИванов-ы5ъ8д 4 года назад

      Спасибо, дружище. Первый пункт помог, третий не пришлось применять.

  • @tyoumixx
    @tyoumixx 4 года назад +1

    Error in render: "TypeError: _vm.info.join is not a function" - help

  • @PPetrik
    @PPetrik 4 года назад +1

    Не заработало.
    Laravel 5.8. Ошибка работы Redis, фреймворк не может подключиться к нему, ошибка - Permission denided. Не разобрался. Есть куча других мануалов как с делать иначе. Автору все равно спасибо!

  • @k0mar12
    @k0mar12 5 лет назад +1

    наглядный пример антипатернов, но в целом суть понятна

  • @valk9819
    @valk9819 6 лет назад +1

    Супер как всегда, опишите способ с Echo. Спасибо за хорошие видео))

    • @DKADEVELOP
      @DKADEVELOP  6 лет назад

      Будем стараться рассмотреть различные способы.

  • @Ooshka
    @Ooshka 6 лет назад +1

    Расшифруйте, зачем в папке роутеров такие файлы как апи, чанел, консоль? В апи только подключать контроллеры которые по запросу отдают что то?

    • @DKADEVELOP
      @DKADEVELOP  6 лет назад

      Чтобы действительно хорошо объяснить нужно отдельный урок выпускать, к сожалению "развернутые" комментарии достаточно много времени на формулировку и правильное объяснение отнимают время и главное увидят не все, поэтому обязательно все рассмотрим в будущих уроках.

    • @Ooshka
      @Ooshka 6 лет назад

      спасибо большое за ответы, тогда плюс к этим вопросам интересуют следующие:
      1) разбирал mvc, но в ларавель самая интересная реализация, можете ее разобрать?)
      2) ну папку router, что за что отвечает
      3) разобрать темы: queue, events, broadcast (что за подписчики и т д)
      4) если можно сделайте еще видео о паттернах в ларавель) мне кажется на практике их разобрать круто будет, как они здесь реализованы и применены, а то на сухую не понятно вообще зачем они существуют...
      5) есть интересная cms, интересно бы ее разобрать) она на основе laravel) но документация на англ только, если будет возможность то круто)
      6) а у вы работаете в компании или фрилансер?

    • @DKADEVELOP
      @DKADEVELOP  6 лет назад +2

      Ok :-)
      6. Было по разному и много. Сейчас это больше для души и жуткий интерес!

    • @katnezabydka1861
      @katnezabydka1861 6 лет назад

      Жуткий интерес к чему?)

    • @DKADEVELOP
      @DKADEVELOP  6 лет назад +1

      Kat Nezabydka, изучение технологий, всегда интересно развиваться и создавать что-то своими руками.

  • @TheAlexeydg
    @TheAlexeydg 6 лет назад +1

    У кого сайт имеет домен отличный от localhost, тогда вместо localhost тут var socket = io('localhost :3000'); пишем свой домен. А так уроки супер, молодцы!

    • @TheAlexeydg
      @TheAlexeydg 6 лет назад

      либо npm run dev если не поможет значит у тебя скрипты не скачались, сделай yarn install потом npm run dev

    • @alexTeT
      @alexTeT 6 лет назад

      Спасибо, протупил тут. Делаю на рабочем сервере, с рабочим доменом.

  • @wilfreedi
    @wilfreedi 6 лет назад +1

    Привет, спасибо за уроки, у меня получилось все сделать на локальном сервере. Не получается разобраться куда какой адрес писать (Адрес сайта, ip сайта) на vds. laravel работает по вашему файлу .htaccess. Если мы в mounted укажем var socket = io('domain.ru:3000'); то как отправить данные по этому адресу и при использовании .htaccess в консоли выдает ошибку GET domain.ru/public/socket.io?EIO=3&transport=polling&t=MPdZJxI 404 (Not Found). Выручайте, как все это запустить на vds? Вам пора запустить раздел на сайте вопрос/ответ, думаю будет очень актуально/популярно

    • @randyharsh3046
      @randyharsh3046 5 лет назад

      если разобрался подскажи как сделал?

  • @АлишерБалтабаев-у7й

    Чем использование nodejs лучше laravel-echo-server ?

    • @DKADEVELOP
      @DKADEVELOP  6 лет назад +2

      Не в коем случаи ни кто не заявляет что nodejs - это самый лучший способ, в основе все равно почти везде (websocket) как его реализовывать дело вкуса и предпочтений.
      В этом плейлисте мы постараемся после окончания первой части рассмотреть все способы реализации.

    • @АндрейКачанов-ф7ч
      @АндрейКачанов-ф7ч 5 лет назад

      @@DKADEVELOP оно будет работать, если вместо redis и node использовать pusher?

    • @DKADEVELOP
      @DKADEVELOP  5 лет назад

      @@АндрейКачанов-ф7ч если сервер pusher, то насколько я помню да. Так как в данной ситуации это только клиент.

  • @Yura3zzz
    @Yura3zzz 6 лет назад

    Если редис не запущен. Как ждать его соединения в скрипте server.js чтоб он не падал. И вообще интересует централизованная обработка ошибок. Например что будет, если редис вдруг перегрузился и стал слейвом с READONLY mode

  • @МаксимКондратюк-б8о

    все сделал как на уроке но на 2 браузере не обновилось и в терминале после Listening on port 3000 ниче не появилось, ошибок ни консоль ни терминал не выдает

    • @DKADEVELOP
      @DKADEVELOP  6 лет назад +1

      Вы точно пересобрали код?
      npm run dev
      Или зарегистрировали компонент?
      resource/assets/js/app.js
      Вывели компонент в шаблоне?

    • @МаксимКондратюк-б8о
      @МаксимКондратюк-б8о 6 лет назад

      все оказалось очень просто, делать нужно было через pusher так как делаю на винде))) переделал под пушер и все работает и графики и чат ))))))

    • @kostinaleksey
      @kostinaleksey 5 лет назад +1

      У меня абсолютно идентичная проблема (( Может быть потому, что я это все на Win 10 пытаюсь сделать? Redis включен в OpenServer

    • @KostiaBazrov
      @KostiaBazrov 5 лет назад

      @@kostinaleksey у меня тоже не пашет на винде 10

    • @spoonjeee4785
      @spoonjeee4785 5 лет назад +3

      РАЗОБРАЛСЯ! (Win10 + OpenServer)
      1. В config/database.php уберите prefix в redis
      2. var socket = io('domen:3000') // у меня была ошибка в порте
      пол дня ковырял, спасибо автору :)

  • @ЕгорПерегудов-з4х
    @ЕгорПерегудов-з4х 4 года назад

    Не понимал почему не работает, оказалось, что нужно очередь запустить "php artisan queue:listen", если в .env QUEUE_CONNECTION не sync

  • @игорьХабибулин-ы5ж
    @игорьХабибулин-ы5ж 6 лет назад +2

    Я не за подробное а за еще наиболее подробное обьяснение

  • @zapasnoy1234
    @zapasnoy1234 4 года назад

    Госпади, как я намучился в деплое. Ошибка на ошибке. Но вроде разобрался. Спасибо

  • @Alexander150997
    @Alexander150997 6 лет назад +2

    Все очень нравится, спасибо за уроки!
    Есть только одно но: нужна разница в уровне занятий, это экономит время. К примеру, рассказывать в видео про веб-сокеты, что такое node.js, как фильтровать переменные в php и т.д. - это не совсем правильно. Это как на 2 курсе английского present simple изучать.
    Лучше сделать отдельные видео для новичков, где их познакомить с основами, нежели рассказывать их там, где речь уже о сокетах идут.
    Если новичок не знает, что такое node.js, то рассказ ему про веб-сокеты внесет только кашу в голову, никак не знания.

    • @DKADEVELOP
      @DKADEVELOP  6 лет назад

      Спасибо за развернутый комментарий, такие комментарии всегда полезны и учитываются.

    • @alexTeT
      @alexTeT 6 лет назад +3

      Не согласен. Сейчас в уроках все правильно и по полочкам рассказывается, при этом нет воды, все по делу. Я с Нодой не работал, но все понял. За уроки большое спасибо, DKA-DEVELOP

  • @azakgcool
    @azakgcool 5 лет назад +1

    Спасибо за урок. У меня ошибка localhost:3000/socket.io .... 101 Switching Protocols. Что делать????

  • @Incognito-ig7ld
    @Incognito-ig7ld 4 года назад

    server.js добавила let io = require('socket.io').listen(http); так работает.

  • @putnikize
    @putnikize 4 года назад

    Это не работает если у нас https соединение, как с бекенда передать в браузер при защищённом соединении?

    • @putnikize
      @putnikize 4 года назад +1

      Вот нашёл решение:
      (Сторона сервера)
      var fs = require('fs');
      var options = {
      key: fs.readFileSync('ssl/privkey.pem'),
      //сертификаты желательно положить в корень
      cert: fs.readFileSync('ssl/fullchain.pem')
      };
      var httpServer = require('http').createServer();
      var httpsServer = require('https').createServer(options);
      var ioServer = require('socket.io');
      var io = new ioServer();
      io.attach(httpServer);
      io.attach(httpsServer);
      httpServer.listen(7165);
      httpsServer.listen(7166);
      io.sockets.on('connection', function (socket){});
      (Сторона браузера)
      var port = location.protocol === 'https:' ? 7166 : 7165;
      var socketIO = io(0.0.0.0:'+port);
      socketIO.once('connect', function(){});

  • @goodman3325
    @goodman3325 6 лет назад +3

    Я "за" подробное пояснение шагов

  • @АлексейСоколов-с2о
    @АлексейСоколов-с2о 6 лет назад +1

    а разве черная магия не запрещена?

    • @DKADEVELOP
      @DKADEVELOP  6 лет назад +1

      Если никому не рассказывать, то скорее всего нет ;-)

  • @alishergani5758
    @alishergani5758 6 лет назад

    Ребята! В SocketComponent.vue параметр метода io("LOCALHOST:3000 ") как меняется на деплое?
    И еще. Как на сервере запусткается server.js? в pakcage.json

    • @DKADEVELOP
      @DKADEVELOP  6 лет назад

      Используйте имя домена вместо localhost, для запуска скрипта можно использовать bash и cron:
      ************runnode.sh****************
      #!/bin/bash
      cd /var/www/pathtolaravel
      if ! pidof node &>/dev/null; then node ./socket.js; fi
      ------------------------------------------------
      И в кроне прописываете путь до этого (runnode.sh) скрипта.
      Это один из вариантов.

    • @alishergani5758
      @alishergani5758 6 лет назад

      DKA-DEVELOP спасибо)
      Не думаю что я понял полностью вас
      Будет видно про Деплой? На heroku например)))🙄

    • @alexTeT
      @alexTeT 6 лет назад +1

      Спасибо за подробные уроки и за то, что отвечаете на комментарии. Поблагодарил вас через Веб-мани ;), чтобы у вас был стимул продолжать в том же духе. Таких как вы очень мало!

    • @DKADEVELOP
      @DKADEVELOP  6 лет назад +2

      Алекс Друг,
      И вам спасибо, отдельное спасибо за $, таких как вы также не много, но вы есть и это радует.
      Сейчас небольшой вынужденный перерыв, все время от времени болеют :-), но скоро будут новые уроки.

    • @KostiaBazrov
      @KostiaBazrov 5 лет назад

      @@DKADEVELOP , на сыроедение переходи, там не болеют;

  • @flight4044
    @flight4044 5 лет назад

    Не работает на laravel 5.8. На laravel 5.7 все хорошо! Кто знает в чем дело? Win 10

    • @flight4044
      @flight4044 5 лет назад +3

      Отвечаю на свой вопрос. В config/database.php уберите prefix в redis

    • @okrulik
      @okrulik 5 лет назад +1

      @@flight4044 спасибо помогло, а что это за префикс такой и че с ним не работает?