Letysite.ru

IT Новости с интернет пространства
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Работа сборщик мусора

На мусоре можно неплохо заработать

Статья впервые была опубликована в приложении к газете «Ведомости» – «Справочнике карьериста 2019/2020», вышедшем в сентябре 2019 г.

«Собирать мусор не так модно, как заниматься блокчейном, но намного полезнее для окружающей среды», – говорит 23-летний выпускник МФТИ Никита Никиш- кин. В июле 2018 г. он вместе с однокурсником Алексеем Хацкевичем запустил приложение «Убиратор». Онлайн-платформа, похожая на Uber, сводит «генераторов мусора» (магазины, склады, офисные центры и проч.) с мелкими сборщиками макулатуры. Небольшим компаниям нужно каждый день избавляться от макулатуры, но заказывать грузовую машину слишком дорого, поэтому они ищут частных водителей. В Москве тысячи водителей зарабатывают на жизнь сбором макулатуры, говорит Никишкин. Они собирают по магазинам и кафе ненужные коробки, бумагу и картон, а затем продают макулатуру в пункты приема по 6000–8000 руб. за 1 т. «Убиратор» помогает автоматизировать процесс. Компания в онлайновом режиме заказывает вывоз макулатуры на конкретное время. Сборщик принимает заказ, забирает вторсырье, а затем отвозит в пункт приема. Меньше чем за год к сервису подключилось 30 компаний со 160 точками сбора мусора и 45 водителей. Сервис берет комиссионные в 25% стоимости проданного сырья в среднем.

Сейчас «Убиратор» сдает по 250 т макулатуры в пункты приема отходов каждый месяц, говорит Никишкин. Оборот компании за 10 месяцев существования составил 5,5 млн руб.

Спец по мусору

У Никишкина богатый опыт в сфере раздельного сбора отходов. Еще на первом курсе он организовал сбор макулатуры и пластмассовых бутылок в МФТИ. Студенты установили в Долгопрудном 100 контейнеров для пластика, купили грузовую машину для сбора отходов, арендовали склад для хранения мусора и приобрели пресс – деньги собирали на краудфандинговых платформах, выигрывали гранты и получали частные пожертвования от компаний и предпринимателей. За семь лет проект «Чистое дело» привлек около 2,5 млн руб., говорит Никишкин. А в 2017 г. он запустил уже всероссийскую акцию «Добрая школа» по сбору макулатуры в школах – проект работает в 66 городах страны.

Проекты вышли на самоокупаемость, но не приносили прибыли. А Никишкин мечтал о прибыльном бизнесе. Еще когда он организовал «Добрую школу», ему приходилось постоянно искать водителей, которые будут забирать макулатуру из школ. Так появилась идея создать агрегатор сборщиков макулатуры.

Практически сразу же после запуска «Убиратор» получил конвертируемый заем в $100 000 от венчурного фонда TealTech Capital. Никишкин на встрече менторов МФТИ познакомился с инвестиционным директором фонда Ильей Кобяковым. Кобякову идея понравилась. В России множество приложений для поиска таксистов, разнорабочих и курьеров, но агрегатора сборщиков мусора еще не было, говорит Кобяков.

Груды макулатуры

По закону компании не имеют права выбрасывать в мусорные контейнеры или вывозить на полигоны макулатуру, шины, пластмассовую упаковку и металлолом – вторсырье нужно сдавать на переработку. В июле 2017 г. правительство составило список более чем из 100 видов отходов, запрещенных к захоронению. Компания должна вести учет, какой объем отходов

у нее образуется и куда сдается вторсырье, поясняет руководитель ассоциации «Раздельный сбор» Татьяна Нагорская. Но так поступают немногие: в России ежегодно образуется около 12 млн т макулатуры и только 27% идет на переработку, остальное вывозится на полигоны, по данным исследования Высшей школы экономики.

Большинству компаний накладно сдавать вторсырье на переработку. Сервисные компании готовы вывозить отходы только большими партиями – от 300 кг, рассказывает Никишкин. Однако есть множество мелких магазинов и кафе, у которых в день накапливается лишь 30–50 кг картона, а склада для хранения отходов нет. И большинство торговых точек просто выбрасывают макулатуру на помойку. Другие продают или вовсе отдают бесплатно картон и бумагу местным дворникам и частным сборщикам, отмечает Никишкин.

Сбором макулатуры заняты тысячи москвичей на собственных или арендованных машинах, знает менеджер пункта приема вторсырья «Вторим» Александр Кучумов. «Вторим» принимает по 30–50 т вторсырья в месяц от 1200 клиентов, около половины – частные сборщики. С января 2019 г. физлица не должны платить НДФЛ от продажи макулатуры, поэтому сбор вторсырья стал еще выгоднее, говорит Кучумов.

Но, связываясь с частниками, компании рискуют. Местные власти стали чаще проверять документы об утилизации отходов. Нарушителям грозят штрафы до 250 000 руб. либо приостановка деятельности до 90 дней, предупреждает старший юрист «ФБК Legal» Елизавета Капустина.

Дворник — не конкурент

Никишкин придумал, как решить проблему утилизации небольших партий отходов – от 35 кг. Сервис заключает с магазином договор на вывоз сырья, который можно предъявить контролирующим органам. А частные сборщики, подключенные к «Убиратору», объезжают сразу несколько разных клиентов и забирают макулатуру. Первый клиент у «Убиратора» появился летом 2018 г., сразу после запуска, – сеть «Вкусвилл».

Работники магазинов «Вкусвилл» всегда отдавали картон бесплатно местным дворникам, но контролирующие органы стали требовать от магазинов документы об утилизации отходов, рассказывает Людмила Купряшкина, помощник территориального управляющего сети. В августе сеть заключила с «Убиратором» договор на вывоз отходов из магазина на Абрамцевской улице, а затем стала подключать и другие точки. Сотрудники магазинов сопротивлялись: они боялись, что водители «Убиратора» станут опаздывать и магазин весь день будет завален коробками, вспоминает Купряшкина. Сейчас «Убиратором» пользуется 120 магазинов «Вкусвилл» в Москве, Твери и Санкт-Петербурге. За полгода, по словам Купряшкиной, водители «Убиратора» вывезли из точек около 410 т картона, пластиковых коробов, упаковочной пленки и макулатуры.

Дрессировщик водителей

«Сборщики похожи на бомбил. Когда-то их было очень много, но потом появились агрегаторы такси, и бомбилы пропали», – рассказывает Никишкин. Он искал сборщиков в соцсетях и на сайтах по поиску работы – обещал им, что сервис обеспечит постоянный поток заказов и стабильный ежедневный заработок. Сначала в сервисе зарегистрировалось три водителя, но вскоре сборщики стали рассказывать о приложении друг другу – сейчас к приложению «Убиратор» подключено 45 водителей.

31-летний Марат Мурзаев несколько лет трудился грузчиком и таксистом, но два года назад по совету брата занялся макулатурой. Мурзаев разъезжал на личном автомобиле и забирал коробки и картон у дворников, магазинов и ресторанов. Среди сборщиков жесткая конкуренция – водители бьются за каждую точку, рассказывает Мурзаев. Иногда заказов не было по нескольку дней подряд. В лучшие дни Мурзаев зарабатывал на перепродаже отходов по 3000–4000 руб. за 12-часовую смену. И полгода назад тот же брат посоветовал Мурзаеву скачать приложение «Убиратора», мол, тогда заказы будут регулярными.

Водитель при регистрации в «Убираторе» указывает паспортные данные, номер и марку автомобиля, а также номер банковской карты. Исполнитель принимает заказ и видит на карте маршрут из 4–5 точек, где нужно забрать отходы, а затем водитель везет макулатуру в ближайший пункт приема. Маршруты для водителей составляют восемь специалистов по логистике «Убиратора», говорит Никишкин.

Сборщики – неорганизованные люди, их нужно дрессировать, шутит Никишкин. Магазины обычно хотят, чтобы машина приехала за мусором в течение нескольких часов. Но водители часто опаздывали или вовсе не приезжали на заказ – попадали в пробку, выключали телефон либо просто забывали выехать. Сначала менеджеры «Убиратора» звонили водителям за несколько часов до заказа, а сейчас водитель нажимает кнопку «Выехать на заказ» в приложении. Если водитель все равно не приезжает за мусором, сервис блокирует его учетную запись на месяц. Водители, которые работают без нареканий, получают дополнительное вознаграждение, говорит Никишкин.

Проблемы роста

Никишкин мечтает, что в 2020 г. водители «Убиратора» будут объезжать по 1300 точек в день, выручка компании составит более 400 млн руб. и наконец появится чистая прибыль. Нынешних 30 клиентов явно недостаточно: «Убиратор» убыточен и снова ищет инвесторов. Чтобы привлекать новых клиентов, сервис расширяет ассортимент принимаемого мусора. Теперь водители забирают у магазинов не только макулатуру, но и полиэтиленовую пленку, строительные отходы и деревянные поддоны. А вскоре Никишкин начнет принимать заказы на вывоз металлолома и пищевых отходов. Мелкие магазины отдают мусор бесплатно, но крупным клиентам, которые сдают от 200 кг макулатуры, «Убиратор» стал платить по 3–5 руб. за 1 кг.

Львиную долю денег TealTech стартап потратил на разработку – нанял шесть программистов для доработки приложения, рассказывает Никишкин. Сейчас магазины могут заказать вывоз мусора только в мессенджере или по телефону. Сотрудник точки, как правило, не может определить точный вес макулатуры, а «Убиратор» хочет прогнозировать ежедневные объемы мусора. Планируется автоматизировать подбор маршрута для водителей.

Тем временем у «Убиратора» стали появляться последователи – сервисы «Чисто-чисто», «Реактор» и проч. Стартап «Реактор» (корпоративный проект «Сибура») был запущен в январе 2019 г., за четыре месяца он выполнил 500 заказов и собрал 54 т вторсырья, рассказал гендиректор стартапа Максим Ремчуков (и директор «Сибура» по устойчивому развитию).

«Убиратор» оценивает российский рынок промышленных и бытовых отходов в $10 млрд и надеется за пять лет занять 0,7% этого рынка. Рост создаст «Убиратору» проблемы, предупреждает основатель портала YouDo Денис Кутергин. Армию водителей-фрилансеров нужно контролировать, чтобы они не воровали макулатуру. Соблазн высок – водители получают мусор от магазинов бесплатно. Сейчас пункты приема переводят деньги за макулатуру на расчетный счет ООО «Убиратор», а тот, в свою очередь, перечисляет деньги на банковскую карту водителя. Как только число получателей денег сильно вырастет, сервис привлечет внимание контролирующих органов, предупреждает Кутергин. Он рекомендует подключать к сервису только самозанятых водителей, которые будут платить налог на профессиональный доход. Это сузит аудиторию, но желающие все равно найдутся: в России миллионы людей хотят подзаработать, а хороших сервисов очень мало, считает Кутергин.

Сборка мусора

Управление памятью в JavaScript выполняется автоматически и незаметно. Мы создаём примитивы, объекты, функции… Всё это занимает память.

Но что происходит, когда что-то больше не нужно? Как JavaScript понимает, что пора очищать память?

Достижимость

Основной концепцией управления памятью в JavaScript является принцип достижимости.

Если упростить, то «достижимые» значения – это те, которые доступны или используются. Они гарантированно находятся в памяти.

Существует базовое множество достижимых значений, которые не могут быть удалены.

  • Локальные переменные и параметры текущей функции.
  • Переменные и параметры других функций в текущей цепочке вложенных вызовов.
  • Глобальные переменные.
  • (некоторые другие внутренние значения)

Эти значения мы будем называть корнями.

Любое другое значение считается достижимым, если оно доступно из корня по ссылке или по цепочке ссылок.

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

Читать еще:  Сборка 3д принтера

В интерпретаторе JavaScript есть фоновый процесс, который называется сборщик мусора. Он следит за всеми объектами и удаляет те, которые стали недостижимы.

Простой пример

Вот самый простой пример:

Здесь стрелка обозначает ссылку на объект. Глобальная переменная user ссылается на объект (мы будем называть его просто «John»). В свойстве «name» объекта John хранится примитив, поэтому оно нарисовано внутри объекта.

Если перезаписать значение user , то ссылка потеряется:

Теперь объект John становится недостижимым. К нему нет доступа, на него нет ссылок. Сборщик мусора удалит эти данные и освободит память.

Две ссылки

Представим, что мы скопировали ссылку из user в admin :

Теперь, если мы сделаем то же самое:

…то объект John всё ещё достижим через глобальную переменную admin , поэтому он находится в памяти. Если бы мы также перезаписали admin , то John был бы удалён.

Взаимосвязанные объекты

Теперь более сложный пример. Семья:

Функция marry «женит» два объекта, давая им ссылки друг на друга, и возвращает новый объект, содержащий ссылки на два предыдущих.

В результате получаем такую структуру памяти:

На данный момент все объекты достижимы.

Теперь удалим две ссылки:

Недостаточно удалить только одну из этих ссылок, потому что все объекты останутся достижимыми.

Но если мы удалим обе, то увидим, что у объекта John больше нет входящих ссылок:

Исходящие ссылки не имеют значения. Только входящие ссылки могут сделать объект достижимым. Объект John теперь недостижим и будет удалён из памяти со всеми своими данными, которые также стали недоступны.

После сборки мусора:

Недостижимый «остров»

Вполне возможна ситуация, при которой целый «остров» связанных объектов может стать недостижимым и удалится из памяти.

Возьмём объект family из примера выше. А затем:

Структура в памяти теперь станет такой:

Этот пример демонстрирует, насколько важна концепция достижимости.

Объекты John и Ann всё ещё связаны, оба имеют входящие ссылки, но этого недостаточно.

У объекта family больше нет ссылки от корня, поэтому весь «остров» становится недостижимым и будет удалён.

Внутренние алгоритмы

Основной алгоритм сборки мусора – «алгоритм пометок» (англ. «mark-and-sweep»).

Согласно этому алгоритму, сборщик мусора регулярно выполняет следующие шаги:

  • Сборщик мусора «помечает» (запоминает) все корневые объекты.
  • Затем он идёт по их ссылкам и помечает все найденные объекты.
  • Затем он идёт по ссылкам помеченных объектов и помечает объекты, на которые есть ссылка от них. Все объекты запоминаются, чтобы в будущем не посещать один и тот же объект дважды.
  • …И так далее, пока не будут посещены все ссылки (достижимые от корней).
  • Все непомеченные объекты удаляются.

Например, пусть наша структура объектов выглядит так:

Явно виден «недостижимый остров» справа. Теперь посмотрим, как будет работать «алгоритм пометок» сборщика мусора.

На первом шаге помечаются корни:

Затем помечаются объекты по их ссылкам:

…а затем объекты по их ссылкам и так далее, пока это вообще возможно:

Теперь объекты, до которых не удалось дойти от корней, считаются недостижимыми и будут удалены:

Это и есть принцип работы сборки мусора.

Интерпретаторы JavaScript применяют множество оптимизаций, чтобы сборка мусора работала быстрее и не влияла на производительность.

Вот некоторые из оптимизаций:

  • Сборка по поколениям (Generational collection) – объекты делятся на «новые» и «старые». Многие объекты появляются, выполняют свою задачу и быстро умирают, их можно удалять более агрессивно. Те, которые живут достаточно долго, становятся «старыми» и проверяются реже.
  • Инкрементальная сборка (Incremental collection) – если объектов много, то обход всех ссылок и пометка достижимых объектов может занять значительное время и привести к видимым задержкам выполнения скрипта. Поэтому интерпретатор пытается организовать сборку мусора поэтапно. Этапы выполняются по отдельности один за другим. Это требует дополнительного учёта для отслеживания изменений между этапами, но зато теперь у нас есть много крошечных задержек вместо одной большой.
  • Сборка в свободное время (Idle-time collection) – чтобы уменьшить возможное влияние на производительность, сборщик мусора старается работать только во время простоя процессора.

Существуют и другие способы оптимизации и разновидности алгоритмов сборки мусора. Но как бы мне ни хотелось описать их здесь, я должен воздержаться от этого, потому что разные интерпретаторы JavaScript применяют разные приёмы и хитрости. И, что более важно, всё меняется по мере развития интерпретаторов, поэтому углубляться в эту тему заранее, без реальной необходимости, вероятно, не стоит. Если, конечно, это не вопрос чистого интереса, тогда для вас будут полезны некоторые ссылки ниже.

Итого

Главное из того, что мы узнали:

  • Сборка мусора выполняется автоматически. Мы не можем ускорить или предотвратить её.
  • Объекты сохраняются в памяти, пока они достижимы.
  • Наличие ссылки не гарантирует, что объект достижим (от корня): несколько взаимосвязанных объектов могут стать недостижимыми как единое целое.

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

Некоторые из них освещены в книге «The Garbage Collection Handbook: The Art of Automatic Memory Management» (R. Jones и др.).

Если вы знакомы с низкоуровневым программированием, то более подробная информация о сборщике мусора интерпретатора V8 находится в статье A tour of V8: Garbage Collection.

Также в блоге интерпретатора V8 время от времени публикуются статьи об изменениях в управлении памятью. Разумеется, чтобы изучить сборку мусора, вам необходимо понимать, как устроен внутри интерпретатор V8 в целом. Об этом вы можете почитать в блоге Вячеслава Егорова, одного из инженеров, разрабатывавших V8. Я говорю про «V8», потому что он лучше всего освещён статьями в интернете. В других интерпретаторах многие подходы схожи, но сборка мусора во многих аспектах отличается.

Глубокое понимание работы интерпретаторов необходимо, когда вам нужны низкоуровневые оптимизации. Было бы разумно запланировать их изучение как следующий шаг после освоения языка.

Работа сборщик мусора

Uber для мусора

Проект: Sborbox

Концепция: Вывоз мусора из квартир

География: Москва

Инвестиции: $1 млн

Основатели: Андрей Сычев, Михаил Морозов

Сервис Sborbox — пионер внедрения бизнес-модели экономики совместного потребления (sharing economy) в мусорной индустрии. Проект придумали в 2018 году предприниматели Андрей Сычев и Михаил Морозов. Название взяли из общего профессионального прошлого — партнеры, знакомые около десяти лет, когда-то вместе работали на спортивном медиапортале Sportbox.ru (входит в холдинг «Матч!»). В новую для обоих сферу первым занесло Сычева — он стал сотрудником оператора по перевозке твердых бытовых отходов «Город99» и придумал модель «Uber для мусора», а затем позвал присоединиться к проекту бывшего коллегу. Суть концепции Sborbox — создание сети специалистов по сбору нескольких видов отходов из квартир (сборщиков). Сборщики, по замыслу Сычева и Морозова, должны стать посредниками между населением и компаниями, заинтересованными во вторсырье. Рекрутируются специалисты в основном из числа дворников — сервис обещает им дополнительный доход до 20 тыс. руб. в месяц. Чтобы заработать эти деньги, сборщик должен регулярно забирать из оговоренного места в подъезде вынесенные жильцами — участниками проекта пакеты с вторсырьем — макулатурой, пластиковыми (ПЭТ) бутылками, алюминиевыми и консервными банками. По словам основателей Sborbox, у сервиса уже более 200 партнеров-сборщиков. Часть из них получают на дополнительную работу разрешение от управляющей компании, обслуживающей тот или иной дом, рассказывают предприниматели.

Пользователи Sborbox могут связаться со сборщиком или оставить заявку на появление сборщика в своем подъезде через одноименное мобильное приложение. Совокупная аудитория сервиса — несколько тысяч человек, а доступен он около 100 тыс. человек, уточняют Сычев и Морозов. В приложении есть функция уведомления сборщика о выставлении мусора в подъезд. После ее активации сборщик собирает пакеты, сортирует вторсырье и в собственном интерфейсе создает заявку на продажу отходов. В феврале 2019 года с помощью Sborbox было собрано 30 т вторсырья, говорит Морозов.

Следующий участник цепочки — перевозчик. Сейчас со Sborbox сотрудничают несколько частных перевозчиков и одна транспортная компания, которую создатели не называют. Ее грузовики покупают вторсырье у сборщиков и перепродают его переработчикам. В приложении можно узнать, где находится ближайший пункт приема того или иного вида вторсырья.

Sborbox уже привлек именитого инвестора — $1 млн в течение полутора лет в стартап согласился вложить Equity Algorithm, венчурный фонд бывшего заместителя руководителя медиахолдинга ВГТРК Дмитрия Медникова (ВГТРК — экс-владелец Sportbox.ru). Equity Algorithm также должен подыскать проекту стратегического партнера, рассказал Медников журналу РБК. «Переработка отходов — один из самых быстрорастущих сегментов в мире, он будет только развиваться», — объяснил Медников логику инвестиции.

Cервис работает бесплатно, но рассматривает несколько моделей монетизации, говорит Морозов. Одна из идей — взимание комиссии с участников цепочки оборота вторсырья, прежде всего с перевозчиков. «Мы собираемся масштабировать бизнес и подключать больше домохозяйств, в идеале — всех», — делится планами сооснователь Sborbox.

А пока проект может похвастаться высоким уровнем лояльности аудитории: 95–97% пользователей, которые скачивают приложение, остаются его клиентами, радуется Медников.

Такси для пластика

Проект: «Экотакси»

Концепция: Транспортировка мусора частными водителями

География: Челябинск, Волгоград, Москва

Инвестиции: до 100 тыс. руб.

Основатели: Дмитрий Закарлюкин

По другой модели работы с отходами пошел предприниматель Дмитрий Закарлюкин. До 2012 года он работал в сфере рекламы и маркетинга. Однажды друзья предложили организовать волонтерскую уборку на берегах озер в родном Челябинске — так он увлекся темой защиты окружающей среды, а спустя год решил превратить увлечение в бизнес. Сервис Закарлюкина «Экотакси» посредничает между населением и заводами-переработчиками, зарабатывая на комиссии за вывоз сортированных отходов.

Пользователи должны оставить заявку на сайте проекта. После этого к ним приедет сборщик мусора и на своем автомобиле вывезет отходы на сортировочную станцию. Первым оператором и водителем «Экотакси» в 2013 году был сам Закарлюкин — сначала он оплачивал и развитие сайта, и топливные расходы. Однако со временем обслуживание машины легло на плечи пользователей — для физлиц выезд «Экотакси» в Челябинске сегодня стоит 200 руб., для юрлиц — 300 руб. Совокупные инвестиции на запуск сервиса ограничиваются 100 тыс. руб. «Это небольшие деньги», — оценивает Закарлюкин.

Модель оказалась востребованной. Сначала «Экотакси» собирало три вида отходов — ПЭТ-бутылки, макулатуру и стекло (дальше собранное сырье отвозится на переработку). Однако основатель проекта заметил у аудитории стойкий интерес к утилизации батареек. На одном из экологических форумов Закарлюкин поделился наблюдением с владельцем и директором челябинского завода «Мегаполисресурс» Владимиром Мацюком (и так способствовал появлению на Урале первого в стране предприятия по переработке батареек).

Читать еще:  Как загрузить с флешки ноутбук lenovo

Парк «Экотакси» в Челябинске со временем вырос до четырех автомобилей. В основном это мини-фургоны, говорит Закарлюкин. Остальные водители работают по франшизе — основатель обучает партнеров, а взамен берет 25% от их прибыли. «В партнеры много кто просится, но в основном экоактивисты-мечтатели, которые не способны поднять проект. Поэтому я не на все франшизные заявки отвечаю положительно», — делится основатель компании. Аудитория «Экотакси» в Челябинске — около 2 тыс. пользователей.

В 2018 году сервис начал региональную экспансию — партнеры проекта появились в Волгограде, Перми, Санкт-Петербурге и Москве. Во всех городах пока работает по одной машине. Стоимость разнится: если в Перми и Волгограде выезд «Экотакси» стоит столько же, сколько в Челябинске, то в Петербурге услуга стоит 400 руб. для граждан и 600 руб. для компаний, а в Москве — рекордные 1000 руб. (для всех категорий клиентов).

Столичные расценки Закарлюкин называет «вынужденной мерой из-за особенностей логистики»: «Экотакси» становится элитной услугой. Им пользуются те, у кого есть деньги и кто сознательно не хочет отправлять отходы в Ярославскую область».

Постепенно ассортимент трансформировался: покупатели сами просили завезти «здоровые» сладости, экзотические крупы, бамбуковые зубные щетки, твердый шампунь. Основатели записывали пожелания и номера телефонов — «как привезем, позвоним». Так набрали базу лояльных клиентов.

Нерешенной осталась проблема с поставщиками. Проходцева старается заказывать все у местных производителей и дистрибьюторов, чтобы «сократить экослед» — топливные выхлопы перевозчиков. Но крупные игроки из Алтая, слыша требования об оборотной таре, часто крутили пальцем у виска. В итоге «Развесная лавка» согласилась принимать продукты в перерабатываемой упаковке с крупной фасовкой (не десять мелких пакетиков, а один большой). В торговом зале полиэтиленовых пакетов нет — Валентина агитирует приходить со своей тарой или в крайнем случае покупать на месте бумажный пакет. «Знаю, бумажные пакеты тоже вредят экологии, но это лучше, чем одноразовый пластик, который не сдать в переработку. Если бы мы были принципиальными до конца, закрылись бы в первый месяц — народ еще не готов», — констатирует Проходцева. Тем не менее тренд положительный: за год количество посетителей со своей тарой заметно выросло.

Выручка «Развесной лавки» в месяц не превышает 90 тыс. руб., прибыль — около 10 тыс. В планах супругов — увеличить показатели и открыть новые точки. «Мотать пленку вокруг картонной упаковки и паковать чайные пакетики в пакетики удобно, но на последствия такого количества упаковки, которая отправится на свалку, всем плевать. Очень бы хотелось, чтобы государство и производители поскорее начали думать не только о прибыли», — говорит Валентина.

Курьер для вещей

Проект: «Собиратор»

Концепция: Сбор отходов и вещей для благотворительности

География: Москва

Инвестиции: 1,3 млн руб.

Оборот: 400–600 тыс. руб. в месяц

Основательница: Валерия Коростелева, Леонид Синицын

Основатели «Собиратора» Валерия Коростелева и Леонид Синицын еще в 2014 году начали поддерживать тему ответственного потребления — ради этого они даже организовали общественное экологическое движение «Раздельный сбор». Новый проект активисты запустили в сентябре 2018 года. «Собиратор» — социальный сервис по сбору вторсырья на переработку, а также вещей для благотворительных фондов и приютов для животных.

Житель Москвы может заказать на сайте проекта курьера, который приедет на машине и заберет отходы по любому адресу в пределах МКАД. За день автомобиль может объехать 25 адресов. За месяц компания отрабатывает 500–650 бесплатных заявок. «Иногда люди объединяются с соседями и друзьями. Мы не работали в новогодние праздники, а сразу после этого получили сто заявок», — рассказывает Коростелева.

График бесплатной машины расписан на несколько месяцев вперед. Собранные вещи автомобиль отвозит на склад, где активисты «Собиратора» распределяют их для предприятий по переработке и благотворительных фондов, а потом развозят по нужным адресам. У проекта есть и пункт приема, куда пользователи сами могут привозить вещи.

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

В 2012 году Коростелева уже запускала прототип «Собиратора» — карту попутчиков, которые по дороге в пункт приема вторсырья могли забрать отходы у других людей. «Тогда было мало пунктов приема, и через всю Москву редко кто ездил сдавать отходы», — вспоминает она.

Окупить проект за счет продажи вторсырья невозможно и сегодня. Работа «Собиратора» обходится в 400–600 тыс. руб. в месяц, деньги идут на аренду двух складов, автомобиля, топливо и другие цели. Несколько сотен тысяч рублей удается получить за счет продажи вторсырья и пожертвований, остальное покрывают вложения основателей. «Собиратор» не берет денег с жителей Москвы, чтобы «как можно больше людей участвовали в проекте и формировали новые привычки», объясняет Коростелева.

Месяц назад компания также запустила экотакси — платный сервис по вывозу вторсырья. Автомобиль можно заказать за 1 тыс. руб. в пределах МКАД и за 1,5 тыс. руб. для поездки в область. В первый месяц работы у этого направления появилось 150 клиентов, и их число растет, заключает Коростелева.

Эффективность сборщика мусора .NET

Ладно, вот в чем дело. Есть некоторые люди, которые отдают свои жизни в руки мусорщика .NET, а некоторые просто не доверяют ему.

Я один из тех, кто частично доверяет ему, пока это не очень критично для производительности (я знаю, что знаю.. критическая производительность + .net не самая удачная комбинация), в этом случае я предпочитаю вручную распоряжаться своими объектами и ресурсами.

Я спрашиваю, есть ли какие-либо факты о том, насколько эффективно или неэффективно работает сборщик мусора на самом деле?

Пожалуйста, не делитесь никакими личными мнениями или likely-assumptions-based-on-experience, мне нужны объективные факты. Я также не хочу никаких дискуссий » за » и «против», потому что это не ответит на вопрос.

Edit: чтобы уточнить, я в основном говорю: независимо от того, какое приложение мы пишем, критическое или нет, можем ли мы просто забыть обо всем и позволить GC справиться с этим или нет?

Я пытаюсь получить ответ на то, что в действительности делает и не делает GC и где он может потерпеть неудачу, где ручное управление памятью будет успешным IF есть такие сценарии. Есть ли у него LIMITATIONS? Я не знаю, как я мог бы объяснить свой вопрос дальше.

У меня нет никаких проблем с любым приложением, это теоретический вопрос.

5 Ответов

Достаточно эффективен для большинства применений. Но вы не должны жить в страхе перед GC. На действительно горячих системах с низкими требованиями к задержке вы должны программировать таким образом, чтобы полностью избежать этого. Я предлагаю вам взглянуть на это быстрое добавление белой бумаги :

Хотя GC осуществляется достаточно быстро, это действительно занимает время, чтобы выполнить, и таким образом сбор мусора в вашем непрерывный рабочий режим может ввести как нежелательную задержку, так и вариация латентности в этих случаях применения которые сильно чувствительны к задержкам. Как иллюстрация, если вы обрабатываете 100 000 сообщений в секунду и каждое сообщение использует небольшой временный 2 символьная строка, около 8 байт (это функция кодирования строк и реализация объекта string) выделяется для каждого сообщения. Таким образом вы создаете почти 1 МБ мусора в секунду. Для системы, которая может необходимо обеспечить постоянную производительность в течение 16 часового периода это означает, что вам придется убирать 16 часов x 60 минут x 60 секунд x 1 МБ память приблизительно 56 GB памяти. Самое лучшее, что вы можете ожидать от сборщик мусора — это то, что он будет очистите это полностью в любом случае Поколение 0 или 1 коллекций и потому что дрожание, самое худшее, что это вызовет поколение 2 мусора коллекция с соответствующим более крупным размером Спайк задержки.

Но имейте в виду, что такие трюки, как уклонение от удара GC, действительно трудны . Вам действительно нужно подумать, находитесь ли вы на том этапе в ваших требованиях perf, где вам нужно рассмотреть влияние GC.

Я могу рассказать вам о некоторых проблемах, которые у меня были с мусорщиком .NET.

Если вы запускаете приложение, которое использует сервер GC (например, приложение ASP.NET), то ваша задержка будет действительно ужасной, с паузами примерно в секунду, когда ни один из ваших потоков не может добиться никакого прогресса вообще. Это происходит потому, что .NET 4 сервер GC является stop-the-world GC. По-видимому, .NET 4.5 представит первый в основном параллельный сервер Microsoft GC.

Однажды я написал некоторый инструментальный код для измерения задержек в параллельной системе с использованием встроенных коллекций, таких как ConcurrentBag , и продолжал работать без памяти в 32-битном режиме из-за массивной фрагментации кучи, потому что .NET GC не дефрагментирует большие объекты. Мне пришлось заменить массивные структуры данных чисто функциональными структурами данных, которые разбросаны на миллионы крошечных кусочков, чтобы избежать наличия чего-либо в большой куче объектов (LOH), что вызывало фрагментацию.

Я нашел ошибки в GC, подобные этой, которая приводит к утечке памяти GC до тех пор, пока вся системная память не будет исчерпана, после чего куча очищается в одном огромном цикле GC, который приостанавливает не только все ваши потоки, но даже другие процессы (потому что система пошла на подкачку) на несколько минут!

Хотя в последней версии .NET GC есть параметр «low latency», он фактически просто отключает сборку мусора, поэтому ваша программа будет утекать память, пока вы не получите одну массивную паузу GC. Microsoft, похоже, предпочитает обходные пути, подобные этому, что равносильно тому, чтобы сказать «write your own garbage collector if you want usable latency».

Тем не менее, .NET GC, как правило, очень хорош, и при осторожном использовании можно получить хорошие результаты от него. Например, недавно я написал отказоустойчивый сервер, который в среднем достигает задержки 114μs door-to-door при задержке 95% ниже 0.5ms. Это впечатляюще близко к state-of-the-art (см. здесь и здесь), учитывая, что я написал всю платформу в F# самостоятельно всего за несколько месяцев. На самом деле сеть внесла больший вклад в задержку, чем .NET GC.

Вам не нужно беспокоиться об этом.

Причина в том, что если вы когда-нибудь найдете крайний случай, когда GC занимает значительное количество времени, вы сможете справиться с ним, сделав точечную оптимизацию. Это не будет концом света — вероятно, это будет довольно легко.

Читать еще:  Технические средства сбора информации

И вы вряд ли найдете такие крайние случаи. Он действительно работает удивительно хорошо. Если вы испытывали только распределители кучи в типичных реализациях C и C++, то .NET GC-это совершенно другое животное. Я был так поражен этим, что написал этот пост в блоге, чтобы попытаться донести суть дела .

Вы не всегда можете забыть о выделении памяти, независимо от того, используете ли вы GC или нет. Хорошая реализация GC дает вам то, что большую часть времени вы можете позволить себе не думать о выделении памяти. Однако окончательного распределителя памяти не существует. Для чего-то важного вы должны знать, как управляется память, и это подразумевает знание того, как все делается внутри вас. Это справедливо как для GC, так и для ручного выделения кучи.

Есть некоторые GC, которые предлагают гарантии в режиме реального времени. «Real-time» не означает «fast», это означает, что время отклика распределителя может быть ограничено. Это своего рода гарантия, которая необходима для встроенных систем, таких как те, которые управляют электрическими командами в плоскости. Как ни странно, с помощью сборщиков мусора легче получить гарантии в реальном времени,чем с помощью ручных распределителей.

GC в текущей реализации .NET не являются реальным временем; они эвристически эффективны и быстры. Обратите внимание, что то же самое можно сказать и о ручном выделении с malloc() в C (или new в C++), так что если вы находитесь после гарантии реального времени, вам уже нужно использовать что-то особенное. Если вы этого не сделаете, то я не хочу, чтобы вы проектировали встроенную электронику для автомобилей и самолетов, которые я использую !

Любой алгоритм GC будет благоприятствовать определенной активности (ie:optimization). Вам придется протестировать GC против вашего шаблона использования, чтобы увидеть, насколько он эффективен для вас. Даже если бы кто-то другой изучил конкретное поведение .net GC и произвел «facts» и «numbers», ваши результаты могли бы сильно отличаться.

Я думаю, что единственный разумный ответ на этот вопрос анекдотический. У большинства людей нет проблем с эффективностью GC, даже в крупномасштабных ситуациях. Он считается по крайней мере столь же эффективным или более эффективным, чем GC других управляемых языков. Если вы все еще обеспокоены, вам, вероятно, не следует использовать управляемый язык.

Похожие вопросы:

Не могли бы вы указать мне на некоторые книги или веб-сайты, подробно описывающие (подробно) основные механизмы и интерфейсы, используемые в сборщике мусора CLR & платформы .Net (скажем, 4.0 и.

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

Может ли кто-нибудь рассказать мне о поколении сборщика мусора в .net году ?

Мой вопрос касается сборщика мусора .NET. Для любого выполняющегося приложения можно ли узнать количество запусков GC (включая номера генерации для этой коллекции) и сколько времени было потрачено.

Я пытаюсь сделать игру в C# и .NET, и я планировал реализовать сообщения, которые обновляют игровые объекты в игровом мире. Эти сообщения были бы C# ссылочными объектами. Я хочу такой подход, потому.

Я только что понял, что для моего приложения cocoa я могу установить параметр сборщика мусора для цели, но и для проекта. Мое приложение потерпело крах, так как я активировал GB только в свойствах.

Я читал о сборщике мусора. Я хотел знать, что такое использование сборщика мусора в объектно-ориентированном программировании? Мы также можем удалить объект вручную вместо сборщика мусора. И тогда у.

Сообщение JSE 5 эргономика предназначена для автоматического выбора подходящего типа сборщика мусора для вас (среди прочего). Я хотел бы знать, есть ли какой-либо способ подтвердить/узнать тип.

Недавно я провел сравнительный анализ сборщика мусора .NET 4, интенсивно выделяя его из нескольких потоков. Когда выделенные значения были записаны в массив, я не заметил масштабируемости, как.

Из-за накладных расходов, связанных с вызовом сборщика мусора в CLR, эффективнее ли оставить его или принудительно выполнить сборку мусора, когда объекты выходят за пределы области видимости?

Как перевести раздельный сбор мусора на бизнес-рельсы

Несколько лет назад Сергей Балтаев решил заняться социальным предпринимательством в области экологии. Вместе с партнером он зарегистрировал НКО, которое занимается переработкой пластика, бумаги и стекла в небольшом городке Менделеевске. На сегодняшний день здесь, а также в соседних деревнях и селах установлены 43 контейнера по сбору мусора.

О первых бизнес-экспериментах, федеральных грантах и предпринимательстве с социальной миссией Сергей Балтаев рассказывает в интервью Контур.Журналу.

Первые попытки запустить бизнес

Я родом из Татарстана, из города Нижнекамска, но вырос и учился в другом республиканском городе — Менделеевске. Туда наша семья переехала в начале 1990-х по служебным обстоятельствам. В 2006 году я поступил в Казанский электротехникум связи на специальность «Эксплуатация средств связи». Тогда это направление было модным и востребованным, вот я его и выбрал. Окончить учебу мне помешала армия. С 2008 по 2009 год я служил, а по возвращении решил все-таки получить диплом. Правда, специальность пришлось поменять: я устроился на работу, перешел на заочное отделение и окончил техникум со специализацией «Радиосвязь, радиовещание и телевидение».

После армии меня потянуло в предпринимательство, я зарегистрировал ИП, потому что в голову вдруг стали приходить разные бизнес-идеи. Сначала занимался информационно-рекламными щитами в Менделеевске. Идею эту подсмотрел в Казани и решил реализовать ее в своем небольшом городке. С первоначальными вложениями помогли родители — они взяли в банке кредит в размере 200 000 руб. На эти деньги я закупил инструменты и комплектующие для изготовления щитов. Постепенно начал устанавливать их по городу, однако не учел, что на подобную активность требовалось специальное разрешение. В итоге с щитами начали возникать проблемы, и тогда я решил перевести бизнес в Елабугу, которая почти в три раза больше Менделеевска. В новой локации начал бизнес с чистого листа, перевел его в официальный статус.

Параллельно запустил крохотный фотосалон, где печатал фотографии, делал ксерокопии и оказывал другие услуги. Постепенно салон стал моей главной специализацией, а щиты начали отходить на второй план — многие из них ломались, но мы даже не занимались ремонтом. Спустя два года, в 2011 году, этот бизнес сошел на нет. Еще через год закрылся и фотосалон.

Источники развития и коммерческая выгода

Идея текущего проекта — автономной некоммерческой организации «Экологическая эффективность вторичного сырья» – родилась в 2015 году. Тогда я уже пять лет работал в МЧС Татарстана. Устроился туда по наставлению родителей: папа всегда говорил мне, что надо найти хорошую, полезную для людей работу. Плюс работа в МЧС предполагала определенные привилегии. Кроме того, удобный график позволял совмещать эту работу с бизнес-экспериментами.

Бизнес по раздельному сбору мусора (сортировка и прессовка вторсырья) изначально казался нам с партнером довольно выгодным предприятием, поскольку спрос на подобные услуги будет всегда.

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

Ежегодно в одной только России выбрасывается 65-80 млрд пластиковых пакетов и 14 млрд единиц одноразовой посуды. Почти все это оседает на свалках, площадь которых уже в 1,3 раза превышает площадь Байкала.

Вот мы с партнером и решили организовать проект, который, с одной стороны, решал бы экологическую проблему, а с другой, помогал бы тяжелобольным детям. В 2016 мы зарегистрировались как НКО и поставили первые два контейнера для раздельного сбора мусора.

Стартовые инвестиции составили более 100 000 руб., это были накопления моего партнера. До сих пор инвестиции не окупились, поскольку коммерческой выгоды для себя в проекте мы почти не видим. Основной источник нашего развития — гранты и премии от региональных и федеральных властей. Так, еще в 2016 году нас заметил Комитет гражданских инициатив. Мы приехали в Москву, где нас наградили премией в 200 000 руб. Этот факт серьезно повлиял на нашу мотивацию, придал сил, уверил нас в том, что мы идем в правильном направлении, делаем хорошее дело.

Бизнес-модель

Сегодня бизнес-модель нашего НКО устроена следующим образом. Мы ставим контейнеры для сортировки мусора, отправляем его на переработку, а прибыль от этого делим пополам. Одна половина денег направляется на лечение тяжелобольным детям, вторая — на закупку новых контейнеров и их обслуживание.

Изначально мы планировали поставить 100 контейнеров, которые, по нашим расчетам, давали бы прибыль в 100 000 руб.

И постепенно мы идем к этой цели — на сегодняшний день на обслуживании находятся 43 контейнера в Менделеевске и близлежащих деревнях и селах. Мы работаем с пластиком, бумагой и стеклом.

В 2018 году наш проект снова отметился на федеральном уровне: мы получили президентский грант «Собирая раздельно мусор — поможем детям!» в размере 449 000 руб. Это позволило нам собрать опытную команду и продолжить развитие проекта. Сейчас в штате работает пять человек: мы с партнером, бухгалтер, координатор проекта и контролер контейнеров. Кого-то из них я нашел по рекомендации, кто-то приходил сам. В команде только профессионалы, дополнительного обучения им не требуется.

Государственный интерес и бесплатный PR

Главными сложностями на старте нашего НКО традиционно стали финансы и бюрократия. Собрать необходимые документы и правильно оформить их — нетривиальная задача. В финансовом плане старались развиваться по модели максимальной экономии. Сразу же представили свой социальный проект в администрацию и заручились их поддержкой. Они помогли нам с офисом: выделили небольшой кабинет на 10 кв. м в своем здании. Также нам бесплатно выделили бокс на 300 кв. м. Собираемся оборудовать там площадку по переработке отходов: ставим пресс и проводим электричество.

Серьезную поддержку в плане PR и маркетинга нам удалось получить во многом благодаря общегосударственному интересу к нашей теме. Поскольку 2017 год был объявлен годом экологии, у нас не возникло проблем с рекламой в СМИ: к нам приезжали местные и федеральные каналы. Сейчас мы продвигаемся в основном онлайн: работает группа во «ВКонтакте», есть простенький сайт. В ближайших планах запуск фандрайзинга и выход на всероссийский уровень.

Не уверен, что уже готов давать советы начинающим предпринимателям. Скажу просто и коротко: генерируйте идеи, находите решения проблем и не сдавайтесь!

Ссылка на основную публикацию
Adblock
detector