►
From YouTube: Dynamic Image Resizing: Workhorse PoC / Golang
Description
No description was provided for this meeting.
If this is YOUR meeting, an easy way to fix this is to add a description to your video, wherever mtngs.io found it (probably YouTube).
A
So
what
I
like
to
see
if
camille
would
be
kind
enough
to
demonstrate
some
sort
of
you
know
rails
and
go
interaction,
so
not
much
into
workhorse
itself,
but
how
we,
let's
handle
some
requests
from
rails,
no
matter
which,
let's
add
some
additional
stuff
and
just
channel
it
to
the
workhorse
and
just
accept
it
and
see
how
we
could
let's
say,
check
it
manually,
what
I'm
most
interested
in
how
to
like
locally
debug
this
stuff,
how
to
check
the
things
are
working.
So
I
don't
know.
A
B
To
understand
you,
you're,
referring
to
the
cent
url
stuff
right.
A
B
C
B
I
mean
I
I
thought
we
had
said
in
the
last
call
that
we
start
super
super
simple
forget
about
image
proxy
and
instead
what
we
would
do
is-
and
I
know
this
wouldn't
be
production
ready,
but
we
just
implement
a
command
in
place
as
being
just
forking
off
another
process
which
will
resize
an
image
that
you
give
it.
You
know
something
really
simple.
B
C
Let
me
figure
it
through
like
how
to
approach
it.
So
maybe
like,
let's,
let's
write
a
like
like
this
kind
of
workhorse
command.
That
would
do
like
image
resize
and
let's
try
to
hook
it
like
the
whole
stack
and,
let's
see
like
if
we
can
do
it
like
in
like
next
one
or
two
hours
doesn't.
This
is
something
that,
like
you
would
spend.
Does
it
sound
like
okay,.
C
A
C
A
Don't
know,
maybe
you
may
be
better
because
you
will
have
like
tools
in
place,
so
you
wouldn't
waste
your
time
like
did
increase
some
stuff,
so
we
will
conceptually
just
do
stuff,
because
I
will
spend
a
lot
of
time
on
setup
and
something
will
broke
in
the
middle
okay.
So
let
me
so
it's
it's
not
principle
for
us
how
to
like
run
a
gck
gtk,
whatever
it's
like
quite
simple,
similar
from
what
I've
seen
in
gdk,
you
just
re-hook
another
executable
into
the
go
path
and
just
rebuild
it
in
place
in
gck.
C
I
mean
this
is
how
like
gck
works
right
yep,
it's
it's
kind
of
kind
of
number
like
quite
complex.
If
you
want
to
interact
in
the
direct
process,
but
it's
possible
so
I
mean
like
for
but
like
if
you
want
to
like
restart
that
always
it's
pretty
convenient.
So
my
ubc
is
misbehaving.
Just
give
me
a
few
moments.
B
Just
one
like,
while
you're
doing
that
command,
and
actually
I
think
I
don't
think
you
need
gck
for
anything
like
you
can
just
that's
the
nice
thing
about
go.
I
already
realized
it's
quite
easy
to
get
started
with
it,
though
go
go
tool
chain,
it's
really
nice
and
streamlined.
If
you
go
to
the
workhorse
folder
wherever
it
might
be,
you
can
just
say
make
build
and
it
will
tell.
A
B
Oh,
you
mean,
I
see
okay,
so
if
you
wanna
you
mean,
if
you
want
to
spin
it.
A
C
So
I
I
like
see
like
maybe
I'm
what
I'm
gonna
do.
I'm
just
gonna
like
I'm,
not
gonna,
write
this
like
external
command
because,
like
it's
very
easy
to
move
that
into
external
command,
but
kind
of
like
write
this
handler
internally,
similar
to
select
some
data
and
send
url
okay,
okay,
it's
like
it
should
be
quite
simple,
but
maybe
we
would
achieve
the
same
effect
quicker
yep.
A
C
Sorry,
the
send
url
because,
like
if
you
look,
for
example,
in
the
here
workhorse,
there
is
like
a
bunch
of
the
metals
that
provide
like
support
for
different
handlers
like
send.
A
C
B
And
does
every
handler
have
to
there's
this
data
structure
called
proxy?
Does
this
every
head?
Okay,
so
every
url
that
workhouse
handles
itself.
That
goes
in
one
proxy,
but
yeah
so
in
a
separate
proxy
and
then
any
other
url
goes
into
this
catch-all
proxy
right.
C
C
B
C
So
so
like
we
get,
this
injection
like
we
receive
a
params.
B
C
I
I
I
think,
like
they
are
not
straight
so
like
you,
can
only
have
like
a
single
handler.
Really
okay,
if
you,
if
you
want
to
have
the
image
recider,
you
would
probably
have
to
replicate
a
lot
of
stuff,
but.
A
A
B
A
A
C
C
A
C
C
We
have
all
to
spot
it
for
the
right
here.
It's
actually
it's
I
mean
in
like
handling
requests
and
responses.
Here,
it's
like
there
is
like
a
set
of
the
good
practices
we
need
to
do,
which
is
like
you
need
to
consume
the
whole
body
in
order
to
have
the
rigors
keep
alive,
prepare
you
working
so
usually
what
you
do.
A
A
A
B
Yeah
I
mean
you
know,
I'm
just
wondering
if
it
would
even
be
possible
to
you
know
prototype
it
outside
of
workhorse
first,
because
the
basic
stuff
is
not
dependent
on
workhorse
at
all.
You
know
if
we
start
with
something
simple
like
resizing
an
image.
You
know
I
think
we
might
need.
I
looked
at
this
api
come
on.
I
didn't
find
any
like
resizing
functionality.
B
There
was
like
stuff
like
give
me
a
rack.
You
know
a
rectangular
area
of
pixels,
but
that
and
itself
isn't
really
useful.
Oh
there
you
go,
there's
a
module
and
there
is
some.
C
Like
some
some
user
right
library
for
that
right,
okay,
so
maybe
let's
do
it.
C
B
I
I
had
a
go
question
actually,
because
this
was
something
I
was
wondering
about
this
short
circuiting
code,
where
you
nest
all
these
functions
and
all
of
them
can
return
an
error,
and
so
you
want
to
change
this
error,
return,
behavior
right,
so
every
function
you
look
at
has
kind
of
like
an
error
like
all
this
boilerplate.
You
know
if
error
is
not
nil,
return.
A
B
A
C
This
is
like
there
is
some
outgoing
discussions
maybe,
but
this
is
one
of
the
idioms
of
using
gold
that
you
have
very
explicit
error
handling
and
you
explicitly
acknowledge
that
you
ignore
some
errors.
This
is
why
you
don't
have
exceptions.
Really
you
never
use
that
you
kind
of
written
this
error
manually.
A
But
it's
common
to
write
like
tons
of
returns
right
during
the
function.
So
every
time
there
is
a
chance
of
error,
you're
checking
for
it,
and
we
run
immediately
right.
C
C
A
C
C
Know
so,
let's,
if
we
have
error,
we
still
have
500
durian
file.
I
don't
really
want
to
come
to
one
file.
Okay,
let's
lock
an
error.
C
C
A
C
That,
like
written
and
like
error,
it
could
be
else
because
the
client
could
be
closing
connection
early
and
things
like
that.
So
it's
actually
very
good
like
to
ensure
that,
like
you,
handle
that
error
and,
for
example,
like
go
like
github
runner,
adopted
like
this
principle-
that
if
you
want
to
skip
the
error
and
like
this
returns
like
two
values
right,
this
is
how
you
acknowledge
that
you
skip
these
values,
that
you
do
not
care.
A
C
C
B
B
Mechanism
the
whole
source
based,
you
know
just
download
and
recompile
it
it's
kind
of
nice,
because
I
have
no
idea
how
it
would
work
in
like
a
large
project.
It
might
be
messy,
but
it's
nice
to
get
started
because
then
you
don't
have
to
learn
a
whole
other
system
just
to
get
started
with
a
project.
You
know
how
like
in
java,
you
have
to
like
learn
maiden
or
gradle,
or
you
know
all
these
different
build
systems
to
even
have
basic
dependency
management.
C
C
B
C
C
Integer
right
right
so
like
this,
these
response
we
have
like.
C
Consequently,
numbers
inside
purchasing
also,
we
may
need
to
use
workhorse
make
sure
I
may
want
to.
I
think
I
never
will
use
commode.
C
A
C
C
B
C
What
is
this?
It's
it's
for
managing
dependencies,
but
it's
strictly
versions
them
because,
like
in
the
past,
quran
could
not
have
management
of
the
dependency.
So
you
would
always
fetch
light
as
default
branch-
oh
wow,
okay,
so
so
so
they
they
introduced.
Like
the
birdino,
there
was
like
a
number
of
different
apps
for
managing
dependencies,
but
maybe
it
introduced
like
the
command,
disability
and
kind
of
like
strictly
links,
the
version
that
you
are
compiling
against
and
it's
kind
of
like
very
close
to
gen
5,
really
yeah.
B
C
A
C
C
And
you
find
image
cannot
use
the
image
of
the
type,
because
this
is
the
interface
and
interface
is
always.
C
So,
let's
check,
let's
change
the
weight,
not
enough
arguments
to
call
okay,
there
is
options
and
in
the
end,
count
options
you
just
hit
just.
B
So
I
read
some
weird
stuff
about
nil
references.
If
you
have
an
interface
type,
I'm
not
sure
I
understand
it
correctly.
So
if
you
have
a
nil
reference
to
an
interface,
did
I
understand
correctly
that
you
can
call
methods
on
it
and
it
would
just
not
do
anything
like
it
does
not
raise
like
a
reference
exception
or
anything.
C
C
Object
and
it
would
be
ignored.
Okay
in
the
script
there
I
introduced
type
checking,
so
you
kind
of
have
to
explicitly
mark
if
you
accept
this
to
be
null
or
not.
No,
but
not
in
the
go
go
like
if
you
want
to
send
sorry.
If
you
want
to
execute
a
function
on
the
object,
it
always
has
to
be
present.
Interface
is
like
some
representation
of
the
sorry,
some
mapping
of
the
object
really
like
it's
like
you,
don't
explicitly
declare
that
the
given
object
implements
interface.
B
C
That's
the
tricky
part
like
in
other
languages.
You
explicitly
declare
that
yeah,
it's
more
like
type
classes
than
that.
Your
object
implements
interface,
not
in
the
go.
This
is
probing
somehow
sometimes
hard.
If
you
use
objects
across
different
modules,
then
you
have
to
like
to
trick
the
goal
link
into
creating
like
this
kind
of
static
inside
validation,
that
your
object
can
be
mapped
to
the
interface
if
you
do
like
dynamic
mapping
later
outside
of
your
module.
C
So
this
is
it
what
we
need
here
like.
We
only
need
like
another
method
like
image,
precise
right.
C
C
C
I'm
looking
for
some
image,
so
actually
this
is
like
some
some
image
right.
B
C
C
B
Yeah,
maybe
because
it's
the
default
image
you
can't
use.
If
you
go
to
the
issue
that
we
had
open,
you
can
use
alexa's
avatar.
A
B
A
B
C
It
okay,
I
I
forgot
to
click
update
profile
settings.
I
assume
yeah.
A
C
B
So
while
it's
loading
alexi,
how
do
you
feel
about
so
if
we
get
this
to
work,
the
seminal
thing?
What
do
you
think
is
the
next
step,
because
to
be
totally
frank,
I
was
kind
of
hoping
that
what
camille
has
done
so
far
like
we
would
do
this,
because
I
think
that
would
have
been
a
great
exercise.
You
know
to
get
our
hands
dirty
and
some
go
related
stuff.
So
I'm
just
wondering
like
what?
What
are
we
hoping
to
get
out
of
today,
mostly,
I
mean
like
for
me.
B
C
Yeah,
so
so
so
I
think
like
it's,
we
still
have
like
the
open
topic
of
the
image
proxy
or
something
to
integrate
as
a
separate
service.
Really
that
is
not
part
of
the
of
the
workhorse
to
figure
out.
If
you
want
to
do
it
or
not,
and
probably
like,
we
actually
have
like
three
different
approaches
to
this
problem,
and
we
need
to
pick
one
of
those
which
is
like,
maybe
something
that
is
similar
to
mine.
C
So
I
I
think,
matthias,
like
you're,
not
gonna,
run
out
of
the
work
to
try
out
yet.
B
B
You
know
working
on,
go
and
workhorse.
C
So
and
it
seems
to
be
like
loading
through
this
generic
uploads
controller.
C
C
C
C
C
A
A
C
I
I
think
it
will
be
possible,
but
probably
you
would
have
to
ensure
that
the
workhorse
team
is
fine
with
that
approach
like
because,
like
I
I
mean
like
like
you,
can
do
anything
really
as
long
as
you
control,
like
the
resources
being
used.
But
really
my
question
is
like
it's
like
the
workhorse
team.
Fine
with
that
approach,
but
like
we're,
gonna
run
some
sibling
process
somewhere
and.
C
B
A
C
A
D
B
B
Of
because
go,
I'm
sure
I
mean
I
haven't
looked
into
it,
but
I
would
suspect
it
can
call
it
the
c
code
as
well.
So
there's
a
ton
of
like
native
libraries
like
image
magic
and
all
these
usual
suspects
that
do
much
much
more
than
actually.
I
think
image
magic
is
probably
a
terrible
example,
because
it's
so
big
and
does
so
many
things
it
will
probably
be
way
too
heavy
but
yeah.
I
think
we'll
figure
that
out
okay,
but
does
the
integration
work
and
go
camille?
B
Is
it
fairly
easy
to
call
into
something
like
native
sorry,
can
you
ask
again
the
question
sorry:
is
it
fairly
easy
to
integrate
native
code
like
shared
libraries
into
go
like?
Is
it
easy
to
call
something
pre-compiled
like
a
shared
library
from
go?
Is
that
possible
at
all
you
don't
really
want
to
do
it.
A
C
C
D
A
A
C
So
like
like
go
like
the
process,
doesn't
allow
you
to
control
like
on
so
so
small
level.
C
This
is,
I
mean
this
is
why
maybe
running
separate
processes
may
be
better
because
in
the
worst
case,
if
your
process
go
outside
of
some
limit,
you
could
really
like,
kill
the
prospect
and
restart
it
again
because,
like
like
take
a
look
like
I
mean
image.
Resizing
is
not
really
that
like
complex,
I
mean
it's
not
like
it's
fairly
memorable
demanding
because
like
in
order
to
store
1k
by
1k,
usually
need
four
bytes
for
rgba.
This
is
usually
like
how
the
images
are
being
encoded.
You
need
four
megabytes
of
the
memory.
B
C
B
B
C
C
A
C
Here
it's
like
you
get
the
average
from
all
of
that
and
like
the
one
that
are
neighbor
for
you,
yeah,
there
are
like
other,
like
mechanisms
that
are
providing
much
better
quality.
I
don't
know
exactly
like
what
they
do.
B
B
The
issue
that
dimitri
raised
now:
what's
the
demetria
like
someone
raised
that
metric
yeah
yeah
because
they
said
even
even
now,
if
you,
if
you
down
scale
it
in
the
browser,
if
you
let
the
rendering
engine,
do
it
there's
noticeable
like
jaggedness
in
the
in
the
image
and
they
they
they
don't
like
that.
So,
yes,.
C
How
aggressively
can
we
scale
like
in
what
buckets
and
like
also
what
algorithm
we
can
use
that
like
gives
us
like
the
best
resource
usage
to
like
to
the
quality,
and
I
don't
really
know
like
which
one
is
the
best
when
running
on
the
scale
like
and
how
completely
intensive
is
that?
C
But
it's
like,
for
example,
like
this
library,
like
it,
gives
you
four
different
algorithms
from
the
simplest
one
to
pretty
like
sophisticated
bubbly,
taking
like
some
kind
of
like
gaussian
filter
or
something
I
don't
know,
but
I
don't
really
know
exactly
how
cpu
intensive
are
there
and
yeah.
B
I
mean
we
can
just
profile
that
later
on,
that
that
should
be
very
easy
to
do.
Tricon.
C
B
Yeah
so
alexi,
I'm
actually
beginning
to
think
that
I,
like
camille's
point
earlier.
I
think
we
should
maybe
talk
to
the
workhorse
team
or
someone
from
infrastructure.
I
guess
and
get
their
thoughts
on
the
general
approach
here
as
well
before
we
spend
like
days
or
like
a
week
on
writing
a
poc
and
then
finding
that's
like
totally
like.
This
would
never
even
be
the
point.
You
know
because
it's
just
architecturally,
not
a
good
decision
like
I
really
like
camille's
point
around
the
process.
B
B
Ideas
to
other
people
as
well
and
see
if
they
think
what
what
is
even
a
good
point
to
start
with,
because
otherwise
we
might
just
be
wasting
time.
A
B
C
C
If
you
would
run
like
this
another
process
running
constantly,
it
would
be
pretty
similar
for
the
latency
because,
like
you
have
persistent
processes
like
you,
don't
have
to
spin
up
each
time,
but
if
you
would
have
like
another
process
that
you
would
like
exact
into
how
it
would
behave
really
like
what
would
be
the
latency.
So
what
I'm
really
saying
like
that?
Maybe
this
plc
could
help
us
really
to
try
to
better
measure
like
the
latencies
resizes
memory
usage.
If
it
would
be
part
of
the
like
workhorse
or
maybe
separate
processes.
C
A
But
what
you
mentioned,
one
of
the
options
is
to
run
process
side
by
side
right
with
workhorse.
But
to
do
this
we
need
some.
You
know
some
health
checking
mechanisms.
B
B
B
Because
if
we,
if
we
have
a
poc,
I
don't
think
you
want
to
go
to
the
infrastructure
team
and
tell
them
oh,
I
wrote
some
code,
you
know,
does
it
make
sense?
I
think
it
will
be
way
easier
for
them
if
you
present
them
like
three
different
options.
The
problems
we
see
or
you
know
where
you
know
what
could
be
a
lot
of
work-
have
the
pros
and
cons
and
then
that
might
be
easier
to
talk
about.
C
B
B
Great
that
it's
that
it's
simple
you
know
honestly
like
the
memory
pressure
issue
for
if
we,
if
we
would
do
it
in
process,
I
think
for
avatars
wouldn't
even
be
a
big
deal,
because
evidence
are
pretty
small.
I
mean
we
looked
at
the
analysis
right
and
we
don't
even
get
that
many
requests
so,
but
for
content
images
it
might
be
very
different
right
because
that
can
be
very
large.
B
C
B
No,
I
I
think,
that's
a
that's
a
that's
a
great
point
and
because
we
we
already
said
you
know,
we
will
focus
on
avatars
first
and
that
actually
gives
us
some
runway
right
because
they're
much
easier
to
deal
with
they're,
very
small
and.
B
Breakdown,
remember
like
there's:
most
of
them
are
png's
they're,
very
small
like
if
we
downsize
downscale
them
to
the
all.
The
extra
sizes
we
need
are
smaller
than
the
base
size,
which
is
like
200k
or
something
which
in
png
is
like
50,
50,
kilobytes
or
something
so
if
we
downsize
them
to
these,
like
15
pixel
images,
they're
like
three
kilobytes
or
something
so
we're
really
talking
about
really
minuscule
amounts
of
memory,
and
if
you
know,
if
we
then
say
well,
we
want
content
images
as
well.
B
C
But
like
like,
there
is
another
like
thing
to
consider:
if
you
maybe
want
to
resize
content
images
that
really
escapes
your
like
lower
boundary,
that
you
have
you
just
kind
of
switch
to
the
forking
model
and
you
execute
external
commands
yeah.
It
gives
you
much
better
control
because,
like
you
might
not
care
for
like
for
these
small
images,
you
want
to
be
as
efficient
because
of
the
rate
yeah
and
like
there
is
no
possibility
that
someone
would
like
consume
it
or
not.
B
When
you
say,
and
do
you
mean
external,
as
in
content,
images
could
be
handled
totally
differently
like,
for
instance,
by
a
psychic
job
up
front,
or
do
you
mean
that
maybe
they're
also
dynamic?
But
if
we
find
an
image
is
too
large
we
we
can
actually
maybe
even
use
the
same
resizing
code,
but
it
would
execute
in
a
different
way.
It
would
not
be
in
process,
but
we
might
spawn
like.
C
Yeah
I
mean
internal.
You
may
still
execute
the
same
code
from
the
same
code
base,
but
it
would
be
like
external
tool
that
you
execute
for
this
big
image
to
resize,
and
maybe
this
architecture
is
like
still
simple
but
kind
of
gives
you
like,
like
both
of
the
both
boards.
If
you
have
big
images,
it
takes
longer
time.
C
So
you
may
use
this
forking,
because
forking
can
cost
like
five
milliseconds,
but
since
it
needs
like
with
sizes,
let's
say
in
30,
milliseconds
or
20.
It's
not
a
big
deal
really
anymore.
But
if
you
have
like
the
small
avatar,
which
is
like
five
of
the
10k
kilobytes,
it's
it's
wasteful
to
fork
yeah.
So
you
kind
of
have
the
fast
path
really
for
the
small
images,
because
you
know
that
they
cannot
consume
a
ton
of
memory
right.
B
And
honestly
like,
maybe
maybe
we
find
that
once
we
tackle
content
images,
maybe
we
do
it
totally
differently,
maybe
maybe
for
the
large
images
we
actually
do
it
statically,
that's
still
an
option,
you
know
because
because
maybe
we
just
say
only
small
images
that
are
safe
to
convert
quickly,
we
do
on
the
fly
and
like
for,
for
you
know
all
these
images
that
are
in
like
comments
and
stuff
that
don't
get
loaded
very
frequently
anyway.
It's
only
when
someone
actually
brings
up
that
issues
and
looks
at
that
comment.
B
Maybe
those
we
just
scale
down
when
users
upload
them,
you
know
or
in
like
psychic
jobs
or
something
I
don't
know,
I'm
just
saying
that
might
also
be
an
option.
Then
what
I
like
about
this
is
then
we
would
completely
remove
that
problem
and
make
it
a
separate
problem.
You
know
that
we
can
have
a
solution,
for
that
makes
sense
that
context,
and
then
here
we
can
just
focus
on
the
problem
at
hand
which
is
which
is
avatars.
B
Yeah
cool
so
alex
say:
do
you
think
that
would
make
sense
as
a
next
step
is
to
just
like
I?
I
would
personally
like
to
see
this
written
down
somewhere
like
these
three
or
whatever
approaches
that
have
been
floated.
C
B
I
think,
like
I
really
liked,
was
that
I
think
so
for
action,
cable,
I
I
this
might
be
a
good
reference
for
how
the
company
has
been
doing
it
in
the
past.
I
really
liked
how
they
went
about
this.
B
I
mean
it's
like
it
was
raised
a
couple
years
ago,
so
I
think,
on
and
off
there
was
like
some
time
spent
on
it,
and
then
there
was
like
a
year,
radio
silence,
but
the
way
I
like
the
way
that
how
they
wrote
it
up
like
they
presented
the
different
options
in
separate
issues,
each
with
the
pros
and
cons
and
then
at
the
end
there
was
a
decision
being
made
about
like
we're
going
to
do
this
because
x
and
z
and
y.
I
really
like
that.
A
B
And
then
then
we
can
send.
I
don't
know,
what's
a
good
way
to
float
this,
maybe
in
yeah
definitely
with
people
who
are
involved
in
writing.
These
systems
like
workhorse,
but
maybe
also
with
infrastructure,
see
what
they
think.
For
instance,
I
haven't
even
heard
like
what
what
what
their
thoughts
are
on
something
an
image
proxy.
You
know
adding
a
new
service
and
then
joshua
said.
Oh,
you
know
this
camo
thing
we
haven't
even
looked
at
that,
so
that
came
out
of
infrastructure,
so
they
probably
have
an
opinion
on
this
stuff.
B
C
You
just
configure
for
rights
where
this
service
is
and
it
could
be
like
image
proxy
running
somewhere,
and
it
could
be
like
this
uploads
controller
preparing
like
the
address
to
serve
the
data
and
like
authenticate
the
request
and
like
you,
would
you
send
url
of
the
workhorse
to
proxy
data
from
that
service?
C
A
A
What
what
is
tricky
for
me
like
in
such
options
that,
for
example,
with
your
prototype,
it's
quite
easy
to
estimate
the
cost
right
like
we're,
running
the
same
amount
of
machines,
same
amount
of
processors
and
so
on.
We
just
increase
latency
a
bit
and
maybe
some
cpu
load,
but
if
you're
talking
about
some
external
servers,
I
don't
know
how
to
understand
how
many
boxes
do
we
need
to
run
this
image
proxy?
Let's.
B
Say
you
don't
need
to
need
this
right
now
right?
I
would
just.
C
A
I
thought
that
when
we
estimated
when
the
option
we
want
what
joshua
like
asked
us
to
fetch
like
increased
latency
and
what
is
the
price
and
price
for
me
is
a
complete
mystery.
If
it's
something
more
complex
than
you
know
inserting
into
existing
process,
because
I
don't
know
how
many
instances,
probably
we
should
ask
infrastructure
for
such
estimations.
A
B
Right,
yeah,
sorry,
just
about
your
question,
so
the
way
we
ended
up
doing
it
with
action,
cable
is
to
say
we
do
the
simplest
thing
first
and
we
deploy
it
and
measure
it
in
production.
So
that
sounds.
A
B
So
in
in
this
case,
the
embedded
mode
was
was
an
option.
It
was
not
ideal
but
like
it
was
the
same
problem
right.
We
had
no
idea
how
this
or
that
thing
would
perform
in
production.
So
I
guess
it
can
make
sense
of
the
simplest
thing
first,
but
if
there's
a
reason
why
they
why
anyone
would
say
you
know,
oh,
like
that's
a
total
no-go,
I
still
think
that's
considered.
A
Then,
if
we
will
present
this
option
to
infrared
workhorse
folks-
and
they
will
agree
that
this
assumption,
we
could
just
wrap
it
into
feature
flex
and
replace
the
library
to
something
more
stable
and
just
ship
it
and
really
check
the
like
picture
flag
group
increase,
cpu
pressure,
increase
memory
and
just
make
a
decision,
because
it
seems
fairly
simple
if
nobody
is
against
it.
B
I
also
think
it
would
be
good
to
like
more
clearly
state
somewhere
what
what
the
benefits
would
be
of
image
proxy,
because
it
has
a
bunch
of
features,
but
I'm
just
wondering
do
we
even
need
those?
You
know
like
how
much
how
much
of
this
we
have
to
replicate
if
we
write
our
own
image
resizing
logic,
you
know,
especially
considering
if
we
just
focus
on
a
certain
class
of
images.
A
This,
like
options,
implementation
options;
let's
maybe
tag
some
folks
who
may
give
an
opinion,
and
if
everyone
is
okay
with
this
simple
piece
here,
maybe
let's
prep
it
into
feature
flux,
try
to
ship
it.
What
camille
implemented
today.
C
Right
so
like
the
the,
the
answer
that
I
would
be
looking
up
for
is
like
how
it
affects,
like
the
workforce
in
the
long
run,
like
memories.
A
C
You
it's
like
because,
like
I
mean
historically,
if
you
look
at
different
systems
like
aimed
processing,
it's
one
of
these
items,
that
also
is
like
kind
of
secure
as
well
like
the
there
may
be
some
toolbox
in
there
that
could
be
used
for
the
generating
something
of
service,
and
things
like
that.
C
A
C
I
would
try
better
understand
like
how
it
actually
works
and
what
what
implications
it
has
on
the
processes
really
or
like
what?
What
how
we
could
do
with
differently,
which
is
kind
of
like
goes
down
to
like
to
what
matthias
was
saying
about
like
different
approaches,
so
maybe
like
starting
with
documenting
different
approaches.
C
It's
like
a
good
way,
because
maybe
it
would
you
could
then
like
think
about
this
simple
approach
and
document,
all
the
possible
upgrade
paths
that
go
now
like
we
solve
all
concerns
really
so
so
like
so
like.
We
know
that
this
is
works
in
that
way.
Today.
We
know
that
this
is
maybe
something
that
is
so
optimal,
but
if
we
do
this,
like
it's
gonna,
be
like
beautiful
and
like
it's,
not
gonna
close
like
it's
gonna
scare
infinitely.
B
B
So
if
we,
even
if
we
have
a
path
where
we
only
do
like,
even
if
it's
just
30
percent
60
of
the
traffic
that
we
handle
and
make
it
faster
by
down
scaling
images,
we
can
always
fall
back
to
the
default
mode,
which
is
to
just
serve
the
image,
as
is
that
will
still
be.
Even
if
we
do
this
only
you
know
half
of
the
time
it
will
still
be
better
than
what
we
have
now
so
yeah.
So
so
I
think
I
like
that,
because
that
always
gives
you
options
right
and
yeah.
B
So
exactly
so,
we
can
look
for
the
simplest
thing
and
then
think
about
the
what
ifs
you
know,
kind
of
the
missing
pieces
and
what
might
happen
and
then
kind
of
outline.
This
is
what
we
have
to
do
as
the
next
steps,
and
that
will
probably
give
us
some
idea
of
like
how
much
work
that
will
be,
and
it
will
help
us
like
not
being
painted
against
the
wall.
You
know
if
that
should
ever
happen.
You
know
in
like
a
year
or
two
we
turn
around
and
see.
Oh,
we
didn't.
C
I
I
I
mean
to
be
fair,
like
for
that
kind
of
like
solution,
if
it's
integrated
into
workhorse,
or
is
it
something
external?
It
doesn't
make
really
a
lot
of
difference
like
how
we
integrate
that
in
the
race.
It's
like
the
race
part
can
always
be
like
change
to
do
something
different.
Really,
if
it's
dynamic,
the
question
is
really:
oh,
it's
gonna.
C
Do
this
like
heavy
work
of
resizing,
it's
going
to
be
it's
going
to
be
another
processes
as
long
as
you
have
this
kind
of
infrastructure
that
is
controlled
by
the
rights
like
who
really
does
that?
It's
really
like
secondary
it's,
like
a
matter
of
like
personal
preference
and
choice
and
like
basing
that
on
the
data
like
who
does
that
in
the
end,
what
process
is
those
is
like
separate
process?
It's
like
it's
the
same
process
as
workhorse
is
a
children
or
maybe
it's
like
it's
completely
separate
service.
C
I
kind
of
feel
like
it's
like
secondary,
and
it's
really
based
on,
like
how
we
see
like
the
performance
of
that
solution
versus
quality.
Maybe
it
turns
out
that,
like
in
order
to
achieve
the
good
quality
on
the
big
images
like
dynamic
resizing
is
never
gonna
work,
because
it's
gonna
take
one
second
to
resize
the
image
to
have
a
good
quality.
C
I
I
have
no
idea.
I
I
didn't
really
check
like
that.
Like
what
happens,
if
someone
uploads
10
10
megabytes
of
the
image,
how
long
it
takes
us
to
resize
that
image?
Is
it
like
you
want?
We
want
to
always
do
that
dynamically
or,
like
we
kind
of
do
optimization
of
the
image
on
the
upload,
but
then,
like
we
use
this
optimized
form
that
we
resize.
C
C
B
A
B
B
Another
layer
as
well-
and
you
know
just
looking
at
just
browsing
through
the
stuff
it
has
like
new,
relic
integration,
but
we're
not
using
neuralic.
So
that's
already
something
we
don't
need
right
and
there's
a
bunch
of
other
things
that
do
sound
useful
and
then
we
would
probably
have
to
replicate
like
prometheus
metrics.
That
sounds
pretty
easy
to
replicate
because
we
kind
of
have
all
we
have
like
go
go.
What
is
it
called?
Go
kit
our
gitlab
go
kit.
B
It
has
logging,
it's
pretty
easy
to
replicate
as
like
something
like
related
to
webp
and
like
a
bunch
of
formats
that
might
be
useful,
but
I'm
not
sure
like
svg,
for
instance.
I
don't
know
if
we
need
that.
I
want
that.
That
might
be
something
we
could
actually
float
back
to
the
front-end
team
or
tim
at
least,
and
ask
do
you
think
you
know
this
is
something.
A
B
B
C
A
It's
quite
important,
and
probably
there
is
a
quietly
nice
outline,
this
library,
I
also
heard
from
dmitry,
says
sleep
vps.
He
also
used
it
even
before
image
proxy
was
released,
he
used
it
and
he
found
it
really
fast.
Maybe
you
could
search
for
a
go
like
packages
with
the
same
library
at
yeah,
yeah.
B
Exactly
use
it
but
yeah
about
security.
If
you
look
at
the
listed
features
of
image,
proxy
and
click
on
security,
it
takes
you
to
the
configuration
page
like
half
of
this
stuff
is
what
we
just
talked
about.
Like
it's
stuff,
like
maximum
resolution
of
the
image
maximum
file
size,
I
mean
that
stuff
is
pretty
easy
to
implement
right.
I
mean
this
is
something
we
can
easily
do
ourselves.
B
Right,
there's
there's
like
a
bunch
of
other
things
like
allowed
sources,
it's
not
relevant
for
us,
because
the
the
image
request,
the
reset
request
will
be
will
come
from
our
app
for
my
crayolas.
So
I
don't
know
like
I'm
not
saying
like
all
of
this
is
useless,
but
like
there's,
probably
a
bunch
of
things
we
just
don't
need
and
and
then
we
can,
maybe
we
can
make
a
list
of
what
would
actually
be
useful
or
what
would
we
have
to
re-implement
ourselves
and
kind
of
then
fit
that
against?
A
B
A
workhorse
versus
using
the
slightly
larger
ready
kind
of
off-the-shelf,
you
know
image
proxy
thing,
but
then
we
have
to
kind
of
pay
the
cost
of
it
being
more
complex
as
well
and
running
it
as
a
separate
service,
and
I
I
can't
answer
this
question.
I
have
no
idea
like
we
would
just
have
to
float
this
and
see
what
people
think.
C
Yep
so
like
image
proxy,
like
they
do
a
lot
of
that
stuff,
because
they
are
like
full-fledged
solutions
for
image,
precision
that
you
can
run
on
the
internet
and
have
like
the
proper
like
authorization
of
that
operation,
and
you
can
run
that
against,
like
external
service
free,
you
can
really
treat
it
as
external
service
that
is
not
associated
with
your
service,
like
you
can
redirect
clients
to
use
that
service
directly.
So
from
that
perspective,
we
probably
need,
like
I
think
it's
like
30
percent
and
like
one
third
of
the
like
the
whole.
C
B
Requests
it
already
pre-signs
a
url
for
an
image
download
image
proxy
can't
do
that
because
it
doesn't
have
access
to
our
business
logic.
So
it
has
its
own
support
to
add
an
s3
backend.
So
it
can
do
all
this
stuff,
but
we
could
use
that
as
well,
but
that's
just
then.
We
then
need
to
also
configure
another
service
to
know
about
s3
credentials
and
stuff
when
we
already
have
an
avenue
for
this
right,
which
is
to
let
the
request
go
through
rails.
B
So
what
maybe
I
need
to
drop
off
soon,
but
can
we
maybe
we
need
to
kind
of
condense
this
to
a
number,
like
maybe
let's
say
no
more
than
three
versions
of
this,
because
right
now
we
are
already
talking
about
dynamic
scaling,
but
maybe
we
can
ask
or
like
we
write
an
outline
and
the
three
options
that
we
present
are:
do
it
dynamically
in
process
in
workhorse,
but
restrict
it
to
be
memory
safe.
B
A
B
To
workhorse
well,
actually
that
would
be
then
four
already,
because
we
also
have
the
separate
service
option.
So
I
guess
that's
actually
for
approaches.
C
B
Channels
so
separate
service,
separate
process
so
separate
like
a
site
car.
You
know
like
a
perpetual
process,
separate
process
but
responds
and
dies
with
every
request,
so
lifetime
is
bound
to
request
and
the
first
one
was
just
in
band
just
do
it.
C
So
I
I
mean
I
mean:
would
it
make
sense
like
to
use
my
poc
so
like
for
you
to
work
concurrently
on
trying
option
number
two
and
number
three
and
like
when
you
have
like
these
three
options?
Kind
of
running?
You
could
really
measure
and
compare
like
different
metrics
for
different
images,
how
it
behaves
this.
C
Could
this
would
give
you
like
something,
some
idea
about
like
memorial,
search,
cpu,
search
latency
and
like
the
complexity
of
implementing
that,
because
I
I
think
like
there
is
an
associated
complexity
with
the
sidecar
approach,
but
I
personally
don't
know
exactly
how
much
it's
gonna
take
us
to
do
it.
C
The
most
naive
way,
most
hacky,
maybe
not
even
like
completely
workforce
way,
but
to
do
it
quickly
to
like
measure
and
understand
how
much
effort
it
would
take.
I
mean
taking
into
account
like
we
have
these
scheduled
for
the
fighting
point
free.
It
would
be
nice
if
you
will
ship
something
but
like
it's
quite
it's
quite
challenging.
B
B
Service,
so
we
need
to
figure
out
whether
or
we
could
just
pair
on
that
initial
bit
of
code
and
then
once
that's
done.
That
can
actually
be
reused
by
some
of
these
other
plcs.
And
then
we
can
maybe
async
that
okay.
B
B
I
gotta
drop
off,
but
thank
you
that
was
that
was
super
cool.
Thank.