
Вместо того, чтобы бушевать в комментариях, подумайте: а нужен ли вам REST вообще?
Что это — осознанный выбор или привычка?
Возможно, именно вашему проекту RPC-like API подойдет лучше?
User
Для передачи данных по сети есть хорошо зарекомендовавшие себя стандарты - например, SOAP, gRPC, AMQP, REST, GraphQL.
При создании вебсайтов малой, средней и большой сложности с потоками данных к бэкенду и обратно в JSON формате обычно используются последние два с их вариантами. Верней, только варианты, потому что REST и GraphQL - ресурсо-ориентированные стандарты. Это как бы просто перенос элементарной работы с базой данных на клиента (хотя под "ресурсом" может пониматься и абстракция). Обычно таких запросов не больше трети от всего бэкенд API.
Попытка сделать весь API максимально RESTful страшно раздувает код и грузит сеть. Потому что остальные две трети запросов - в форме команд на бэкенд проделать какие-то действия, слабо отображающиеся на CRUD над некими ресурсами. И вариантов послать такие запросы достаточно много. Даже, чересчур.
В блоге GitHub сообщили, что ИИ-инструмент Copilot стал доступен всем разработчикам по подписке. Бесплатно сервисом могут пользоваться только студенты и разработчики популярных проектов с открытым исходным кодом.
За последние месяцы количество IT-специалистов, желающих переехать и устроиться в зарубежную компанию, резко возросло. Одни принимают решения в панике, другие действуют осознанно.
Мы пообщались с Павлом Замошиным, Site Reliability Engineer в Speakap. Он уже более двух лет в релокации, и его переезд пришёлся на разгар пандемии. Павел рассказал, чем зарубежные собеседования отличаются от российских, и что нужно уметь, чтобы получить оффер. А ещё поделился, как выбирал страну и с какими неочевидными сложностями столкнулся после переезда.
Всем привет! Меня зовут Леонид, я владелец сервиса Поиск VPS. В последнее время мне в обратную связь начало поступать очень много вопросов, каким образом можно оплачивать зарубежный хостинг, так как Visa и MasterCard Российских банков перестали работать не в России.
Есть всякие обходные пути в виде получения карты иностранного банка, которая пополняется криптовалютой, использования QIWI-кошелька и прочих костылей, однако на мой взгляд самым простым способом является международный валютный банковский перевод, который в данный момент отлично работает для всех банков, за исключением нескольких попавших под санкции.
Сразу хочу предупредить, что SWIFT-перевод будет идти несколько дней, за отправку платежа ваш банк может брать комиссию, плюс по дороге что-то могут "откусить" банки-посредники, однако чаще всего это будут незначительные суммы. Однозначным плюсом в этом случае является отсутствие конвертации: если у вас на счету есть доллары, то вы можете отправить платеж прямо в этой валюте, и получатель получит тоже доллары.
Ниже я подготовил список зарубежных хостеров, которые принимают оплату на банковский счет. Прошу учесть, что оплата банковским переводом чаще всего не автоматизирована, для этого может понадобится написать в техподдержку.
Привет.
Сегодня хочу поговорить о том, как ускорить приложение через конфигурирование PHP-FPM.
Сейчас самый популярный (из тех с которыми я сталкивался) стек на котором поднимается PHP приложение это веб сервер nginx и процесс-менеджер php-fpm.
Я хочу поднять простое приложение с Laravel проектом, которое устанавливается со всеми параметрами по умолчанию. Попробуем это приложение нагрузить пользователями с помощью простого Javascript скрипта и посмотрим как ему удастся справиться с нагрузкой и как мы можем повысить обрабатываемую нагрузку только конфигурированием php-fpm. В конце статьи можно будет найти ссылку на GitHub и попробовать своими руками.
Для начала посмотрим на стандартную конфигурацию php-fpm и попытаемся понять где могут быть проблемы в производительности с коробки.
Итак, у меня есть простое приложение на PHP с NGINX и PHP-FPM предустановленными в стандартных конфигурациях и маршрут Laravel.
Всем привет, меня зовут Коля и я 10 лет пишу на php. Хлоп-хлоп-хлоп, привет, Коля. Впервые я попробовал PHP в 11 классе, на тот момент были очень популярны сайты для мобилок, и меня это затянуло. Я писал на php на уроках и переменах со своего nokia n73, разбирался с одной из широко известных в узких кругах CMS, и грезил светлым будущим. Вот же оно, я теперь программист, я все понимаю и у меня получается.
Затем была первая работа, брошенный универ, ООП, фреймворки, и первые попытки соскочить. Сначала Java, затем плюсы. Я делал простенькие программки-помощники (трекер времени с автосохранением в jira, десятистрочные плагины для IDE), и среди этих for, if, switch я без проблем плавал как рыба в воде. Но как только требовалось что-то посложнее таймера, сразу начинался бокс с клавиатурой, столом и прочими предметами. Я искренне не понимал, какого черта ошибка выглядит как третий том Войны и Мира, с кучей непонятного текста и полным отсутствием человекопонятного пэхапэшникопонятного описания ошибки.
Всем привет. Очень часто, работая со старым (а иногда и не очень) кодом, или пытаясь применить какую-то библиотеку, сталкиваешься с ограничениями в применении. Зачастую проблемы бы не было, будь код архитектурно грамотен. Есть множество архитектурных правил и паттернов, которые в конечном счете облегчают расширение кода, рефакторинг и переиспользование. В статье хочу затронуть некоторые из них в примерах.
После релиза PHP версии 7.3 я решил уделить больше внимания развитию PHP: что собственно развивается и в каком направлении искать понимание потенциала и оптимизации этого невероятно популярного языка программирования.
В результате поиска лаконичного списка функций, реализованных PHP за время разработки PHP v7.x, я решил составить список сам - приятное дополнение, которое, я думаю, кому-то тоже может пригодиться.
За основу мы возьмем PHP 5.6 и рассмотрим, что было добавлено и изменено. Я также добавил везде где смог ссылки на официальную документацию по каждой из упомянутых фич, поэтому, если вам вдруг понадобится получить более подробную информацию - пожалуйста.
Привет, Хабр! Представляю вашему вниманию перевод статьи "Docker Tips: Clean Up Your Local Machine" автора Luc Juggery.
Сегодня мы поговорим о том, как Docker использует дисковое пространство хостовой машины, а также разберемся в том, как это пространство освободить от ошметков неиспользуемых образов и контейнеров.
Network Standard | IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, IEEE 802.11ac, IPv4, IPv6 |
Product Segment | AC1900 ultimate AC performance: 600+1300Mbps |
Data Rate | 802.11a: 6,9,12,18,24,36,48,54Mbps 802.11b: 1, 2, 5.5, 11Mbps 802.11g: 6,9,12,18,24,36,48,54Mbps 802.11n: up to 450Mbps 802.11n TurboQAM:up to600Mbps 802.11ac: up to 1300Mbps |
Antenna | External x 3 |
Operating Frequency | 2.4GHz/5GHz |
Encryption | 4-bit WEP, 128-bit WEP, WPA2-PSK, WPA-PSK, WPA-Enterprise, WPA2-Enterprise, WPS support |
Firewall & Access Control | Firewall: SPI intrusion detection,DoS protection Access control: Parental control, Network service filter, URL filter, Port filter |
Management | UPnP, IGMP v1/v2/v3, DNS Proxy, DHCP, NTP Client, DDNS, Port Triger, Universal Repeater, System Event Log |
VPN Support | IPSec Pass-Throuth PPTP Pass-Through L2TP Pass-Through PPTP server OpenVPN server PPTP client L2TP client OpenVPN client |
WAN Connection Type | Internet connection type: Automatic IP, Static IP, PPPoE(MPPE supported), PPTP, L2TP WAN Bridge support Multicast Proxy support Multicast Rate Setting support |
Utilities | .Download master — support BT, NZB, HTTP, ED2K — support encryption, DHT, PEX and magnet link — upload and download bandwidth control — download scheduling .Media server: — Image: JPEG — Audio: mp3, wma, wav, pcm, mp4, lpcm, ogg — Video: asf, avi, divx, mpeg, mpg, ts, vob, wmv, mkv, mov .QoS: — WMM — User definable rules for IP/MAC/Port. Upload and Download bandwidth management. — ACK/SYN/FIN/RST/ICMP with Highest priority .Guest Network — 2.4GHz guest network x 3, 5GHz guest network x 3 .Printer Server: multifunctional printer support(Windows nly), LPR protocol support .File server: Samba and FTP server with account management .PPTP VPN server .Network map .Traffic monitor |
Ports | 4 x RJ45 for 10/100/1000/Gigabits BaseT for LAN, 1 x RJ45 for 10/100/1000/Gigabits BaseT for WAN USB 2.0 x 1 USB 3.0 x 1 |
Кнопка | WPS Button, Reset Button, Power Button, Wireless on/off Button |
Светодиодный индикатор | PWR x 1 Wi-Fi x 2 LAN x 4 WAN x 1 USB x 2 |
Электропитание | AC Input: 110V~240V(50~60Hz) DC Output: 19 V with max. 1.75 A current |
Размеры | 220 x 83.3 x 160 mm (WxDxH) |
Вес | 640 g |
Комплeктация | 1 x RT-AC68U Wireless-AC1900 Dual Band Gigabit Router 1 x RJ-45 cable 1 x Power adapter 1 x QSG 1 x Support CD(user manual and ultility) |
Router Special Features | 3G/4G data sharing, AiCloud, Printer server, Download Master, AiDisK, Multiple SSIDs, Parental Control |
Information